找回密码
 加入
搜索
查看: 475|回复: 9

关于DPI缩放,有没有人写个UDF用于控制控件尺寸?

[复制链接]
发表于 2023-9-26 18:53:04 | 显示全部楼层 |阅读模式
RT,写个UDF直接调用,根据DPI自动调整控件尺寸的方式应该体验不错

比如原来是GuiCtrlCreateLabel(10,20,100,30),使用UDF后写成GuiCtrlCreateLabel(_X(10),_Y(20),_Width(100),_Height(30))以保证在各种DPI下显示效果一致,这样有没有可能实现???
发表于 2023-9-26 19:16:20 | 显示全部楼层
创建时坐标直接带上 * DPI缩放系数就行了,要什么udf。
发表于 2023-9-26 19:15:27 来自手机 | 显示全部楼层
当然可以实现,但是不够智能。应该写成函数,探测所有控件,然后自动调整,手动改写控件太费劲了。懂我意思吧
发表于 2023-9-26 19:22:39 来自手机 | 显示全部楼层
目前还有一个简单的办法适应缩放。AU3的窗口控件设置成随窗口缩放模式。然后根据DPI缩放比例调整窗口大小。缺点就是个别控件不支持这种特性,遇到这种控件还需要单独调整。
发表于 2023-9-27 10:37:52 | 显示全部楼层
管他个缩放,用加载个html做界面。
 楼主| 发表于 2023-9-27 18:47:08 | 显示全部楼层
afan 发表于 2023-9-26 19:16
创建时坐标直接带上 * DPI缩放系数就行了,要什么udf。

不要光打嘴炮,举个栗子啊...
 楼主| 发表于 2023-9-27 18:47:33 | 显示全部楼层
绿色风 发表于 2023-9-27 10:37
管他个缩放,用加载个html做界面。

不要光打嘴炮,举个栗子啊...
发表于 2024-3-22 08:14:36 | 显示全部楼层
刚看到这个帖子,我说想一下自己的看法。不管是*dpi系数,还是/dpi系数,还是html,只要有dpi缩放,界面就会模糊,不清楚。这个dpi缩放系数也比较容易计算,就算按照楼主的这个思路,创建时放大或者缩小尺寸都无济于事,还是会照样模糊。所以建议还是直接禁用dpi缩放:https://www.autoitx.com/thread-72066-1-1.html
发表于 2024-3-22 10:55:46 | 显示全部楼层
haijie1223 发表于 2024-3-22 08:14
刚看到这个帖子,我说想一下自己的看法。不管是*dpi系数,还是/dpi系数,还是html,只要有dpi缩放,界面就 ...

一般 * dpi 系数前肯定是要先设置DPI感知方式的,比如 SetProcessDpiAwareness 或 SetProcessDpiAwarenessContext 设置 或简单点直接禁用,然后就可在创建时对需要的控件 * dpi 调整了。
光禁用对于小的缩放比例还没事,可能还看得清,但是对于较大的比例(比如超高分笔记本),如果不处理就根本看不清了,那就还不如不禁用,由系统模糊缩放得了,至少看得清~
发表于 2024-3-22 15:00:34 | 显示全部楼层
afan 发表于 2024-3-22 10:55
一般 * dpi 系数前肯定是要先设置DPI感知方式的,比如 SetProcessDpiAwareness 或 SetProcessDpiAwarenes ...

哦哦,原来如此,学习到了。感谢a版指点。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-28 00:05 , Processed in 0.079821 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表