群聊精华

关于vb6的dpi缩放问题

【潜水】群友A 2024/5/5 13:00:38
兄弟们测试下

【潜水】群友A 2024/5/5 13:00:53
why? 百思不得其解,哪位大佬知道原因

【潜水】群友A 2024/5/5 13:03:07
这导致开发的用户控件,在高比例DPI下显示错位,界面不美观

【潜水】群友A 2024/5/5 13:11:01
你勾选DPI为 应用程序

【潜水】群友A 2024/5/5 13:11:25

【潜水】A 2024/5/5 13:11:53
您屏幕缩放比例是多少

【潜水】群友B 2024/5/5 13:12:30
1366 768

【潜水】A 2024/5/5 13:12:43
这是分辨率

【潜水】A 2024/5/5 13:13:13

【潜水】A 2024/5/5 13:13:19
缩放比例是这个

【潜水】B 2024/5/5 13:17:29
大哥 我win7

【潜水】A 2024/5/5 13:18:01
哦哦 ,好多年没用win7了,我不知道,抱歉

【管理员】C 2024/5/5 13:39:24
要用 Me.ScaleWidth,不要用Me.Width。

【管理员】C 2024/5/5 13:42:04
VB6默认的DPI适配是有BUG,最高只能安全兼容到150%,这也就是为啥新系统要默认使用系统缩放来兼容老程序的原因。

【管理员】C 2024/5/5 13:42:59
回复A: win7 没有问题
胎神,DPI问题关你Win7还是Win10屁事,你100%你裆燃没有问题啊,你改成200%再看看?

【管理员】A 2024/5/5 13:43:25
胎神,Win7设置500%都可以。

【潜水】B 2024/5/5 13:44:50
我以为只要win10以上才能设置缩放呢

【管理员】C 2024/5/5 15:43:07
Win95就已经支持了DPI,只是95~XP最高好像只能125%。Vista开始提高到最高500%。

【管理员】C 2024/5/5 16:00:13
把ScaleMode改成3像素模式,然后自己算坐标看看呢?

【潜水】A 2024/5/5 16:50:58

【潜水】A 2024/5/5 16:51:09

【潜水】A 2024/5/5 16:52:04
不知道是什么情况,我电脑是缩放200%     1196/2 * 15 = 8970

【潜水】A 2024/5/5 16:52:14
怎么是8372 

【潜水】A 2024/5/5 16:53:08
原因我到是找到了,用户控件是按ScaleWidth来缩放宽度的,picture1控件是根据with来缩放控件的

【潜水】A 2024/5/5 16:56:07
原因我到是找到了,picture1控件是按ScaleWidth来缩放宽度的,用户控件是根据with来缩放控件的

【潜水】A 2024/5/5 17:04:54

【潜水】A 2024/5/5 17:05:03
这样写OK了 宽度一样了

【管理员】C 2024/5/5 22:44:42
不知道是什么情况,我电脑是缩放200% 1196/2 * 15 = 8970
200%是1像素7缇

【管理员】C 2024/5/5 22:46:35
胎神,Me.Width是带边框的啊,你用这个搞毛啊?VB6给你专门提供了获取缇和像素比例的方法啊!
横向比例用 Screen.TwipsPerPixelX
纵向比例用 Screen.TwipsPerPixelY

【管理员】C 2024/5/5 22:50:25
要注意以上这个都是只能用于屏幕DPI缩放,打印机DPI跟Screen无关,要用打印机对象.TwipsPerPixelX和TwipsPerPixelY(有些打印机会存在横纵DPI不一样的情况,所以一定要注意,X和Y的DPI不要混用)。

Views: 88

Hi, I’m 邓伟

本来无一物,何处惹尘埃

发表回复