主题:[求助]在vfp9程序设计中如何让表单窗口根据屏幕分辨率自动最大化?
kazu
[专家分:0] 发布于 2008-01-02 12:06:00
如题!
小弟在此先谢了!
回复列表 (共9个回复)
沙发
cbl518 [专家分:57140] 发布于 2008-01-02 19:23:00
用 《ChangeDisp1aySettings》 API 函数!!!
板凳
超级侠客 [专家分:50] 发布于 2008-01-05 08:30:00
直接设计成最大化就可以啊!
3 楼
crocodile3358 [专家分:390] 发布于 2008-07-20 11:02:00
API函数怎么用,它的帮助去哪里找?
4 楼
北京种子乐 [专家分:3710] 发布于 2008-07-20 11:07:00
这个问题我一直认为解决不了。
等着瞧。
5 楼
homayzh [专家分:7040] 发布于 2008-07-20 12:33:00
i 不用API,
SYSMETRIC(1)
SYSMETRIC(2)
得到 屏幕分辨率,在表单的init中写代码
6 楼
北京种子乐 [专家分:3710] 发布于 2008-07-20 12:50:00
[quote]i 不用API,
SYSMETRIC(1)
SYSMETRIC(2)
得到 屏幕分辨率,在表单的init中写代码[/quote]
我感觉各位老师讲的好象是根据分辨率,调整表单的大小。
那么还会有一些界面处理不好的,但也能解决一些问题。
7 楼
homayzh [专家分:7040] 发布于 2008-07-20 14:30:00
[quote]我感觉各位老师讲的好象是根据分辨率,调整表单的大小。
那么还会有一些界面处理不好的,但也能解决一些问题。
[/quote]
您的[quote]界面处理[/quote]是指?
你可以在 表单的resize 里写上控件大小 与 表单大小 的关系,然后 在表单 的
init里写明表单和屏幕分辨率的关系,就ok了?
如:
[quote]
form.init
thisform.height = SYSMETRIC(1)*0.5
thisform.width = sysmetric(2)*0.3
form.resize
thisform.text1.top = thisform.height - XXX
thisform.text1.left =. ......
.....
[/quote]
8 楼
cbl518 [专家分:57140] 发布于 2008-07-21 06:23:00
[quote]i 不用API,
SYSMETRIC(1)
SYSMETRIC(2)
得到 屏幕分辨率,在表单的init中写代码[/quote]
要明白:
《ChangeDisp1aySettings》 API 是调节屏幕分辨率,
和你设计程序的,分辨率大小保持一致。
不要和 SYSMETRIC 函数的功能混为一谈!
当把表单的
Object.WindowState
设置为 2
窗口不就是最大化了吗,还用 SYSMETRIC 干什么啊!
在表单 Resize 事件中:
计算屏幕的 x y 的变化率,
再根据 变化率,遍历表单用递规法,调整各控件的,几何尺寸和字体大小。
这样用几句代码,不是很简单的,调整了表单在屏幕的适合率了吗?
如果不需要调解字体大小,
vfp 9 中的卯定属性已经很好用了,
为什么还要讨论这个问题呢?
9 楼
homayzh [专家分:7040] 发布于 2008-07-21 13:01:00
老师,楼主的意思是 让 表单 根据屏幕分辨率调整大小,而不是 根据表单调整 分辨率的
我来回复