为编程爱好者分享易语言教程源码的资源网

网站首页 > 易语言相关 > 易语言例程 正文

易语言判断窗口是否在屏幕内源码

三叶资源网 2020-10-11 11:39:32 易语言例程 1839 ℃ 0 评论

写在前面:源码改良自精易模块,

修复:窗口闪现到左上角问题,现在不再闪现而是回归到移动的位置的屏幕边缘

新增:保留空间,可以有效防止窗口被拖到屏幕外面就剩一丢丢线条看不见,低于保留空间视为在屏幕外

已知bug:屏幕下方的保留空间检测好像还有点问题(懂技术的大佬麻烦给修复下qwq)

注意:如果选择用不了的话改成如果真也行,就是判断下有没有留空。

@墨影0620

.版本 2

.子程序 窗口_是否在屏幕内2, 逻辑型, 公开, 判断指定窗口是否在屏幕内,在屏幕内返回真,否则返回假
.参数 窗口句柄, 整数型, , 要判断的窗口句柄
.参数 是否自动校正, 逻辑型, , 如果窗口的左边、顶边小于0或大于屏蔽宽度或高度,将自动校正。
.参数 顶端保留, 整数型, 可空, 留空默认为窗口宽度,如果窗口在屏幕内的尺寸低于此尺寸视为不在屏幕内!
.参数 左边保留, 整数型, 可空, 留空默认为窗口高度,如果窗口在屏幕内的尺寸低于此尺寸视为不在屏幕内!
.局部变量 精易_矩形, 精易_位置和大小
.局部变量 局_成立, 逻辑型
.局部变量 屏幕宽度, 整数型
.局部变量 屏幕高度, 整数型

精易_矩形 = 窗口_取位置和大小 (窗口句柄)
顶端保留 = 选择 (是否为空 (顶端保留), 精易_矩形.高度, 顶端保留)
左边保留 = 选择 (是否为空 (左边保留), 精易_矩形.宽度, 左边保留)
.如果真 (精易_矩形.左边 < 0 或 精易_矩形.顶边 < 0)
    局_成立 = 真
.如果真结束
系统_取屏幕分辨率 (, , 屏幕宽度, 屏幕高度, )
.如果真 (精易_矩形.左边 + 左边保留 > 屏幕宽度 或 精易_矩形.顶边 + 顶端保留 > 屏幕高度)
    局_成立 = 真
.如果真结束
.如果真 (局_成立 且 是否自动校正)
    .如果真 (精易_矩形.左边 < 0)
        窗口_置位置和大小 (窗口句柄, 0, 精易_矩形.顶边, 精易_矩形.宽度, 精易_矩形.高度)
    .如果真结束
    .如果真 (精易_矩形.顶边 < 0)
        窗口_置位置和大小 (窗口句柄, 精易_矩形.左边, 0, 精易_矩形.宽度, 精易_矩形.高度)
    .如果真结束
    .如果真 (精易_矩形.左边 + 左边保留 > 屏幕宽度)
        窗口_置位置和大小 (窗口句柄, 屏幕宽度 - 左边保留, 精易_矩形.顶边, 精易_矩形.宽度, 精易_矩形.高度)
    .如果真结束
    .如果真 (精易_矩形.顶边 + 顶端保留 > 屏幕宽度)
        窗口_置位置和大小 (窗口句柄, 精易_矩形.左边, 屏幕高度 - 顶端保留, 精易_矩形.宽度, 精易_矩形.高度)
    .如果真结束

.如果真结束
返回 (局_成立 = 假)
文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
伊对APP协议界面控件配置保存易语言模块分析窗口位置控制模块发送邮件抓包工具ZwQuerySystemInformation超文本浏览框简单多线程闪送APP客户端文字游戏沃钱包网页登录JS改写谷歌浏览器表白程序喜马拉雅主播粉丝采集折线图源码Sqlite本地库文字识别自动打铃
最新评论