易语言如何使用BeginDeferWindowPos, DeferWindowPos,EndDeferWindowPos这个3个API移动窗口组件

易语言如何使用BeginDeferWindowPos,DeferWindowPos,EndDeferWindowPos这个3个API移动窗口组件问题同上·希望能有实例代码... 易语言如何使用BeginDeferWindowPos, DeferWindowPos,EndDeferWindowPos这个3个API移动窗口组件
问题同上·希望能有实例代码贴出!请不要贴出MoveWindow或者SetWindowPos的代码,我需要的是BeginDeferWindowPos, DeferWindowPos,EndDeferWindowPos利用这3个API来实现组件移动!谢谢大家了!有源码附上最佳!
请高手给予解答·谢谢了
展开
 我来答
本豪爱大米
2014-09-24 · TA获得超过273个赞
知道小有建树答主
回答量:358
采纳率:66%
帮助的人:269万
展开全部

使用以下API来处理窗口移动,BeginDeferWindowPos, DeferWindowPos,EndDeferWindowPos
先调用 BeginDeferWindowPos 设定需要移动的窗口的个数
使用DeferWindowPos,来移动窗口,这个API并不真的造成窗口移动
EndDeferWindowPos 一次性完成所有窗口的大小和位置的改变。 

有个地方要特别注意,要仔细计算清楚要移动多少个窗口,BeginDeferWindowPos设定的个数一定要和实际的个数一致,否则在Win9x下,如果实际移动的窗口数多于调用BeginDeferWindowPos时设定的个数,可能会造成系统崩溃。在Windows NT系列下不会有这样的问题。

 

例程代码(复制代码):

.版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 句柄, 整数型
.子程序 __启动窗口_创建完毕
句柄 = BeginDeferWindowPos (1)
DeferWindowPos (句柄, 取窗口句柄 (), #HWND_TOP, 10, 10, 300, 300, #SWP_SHOWWINDOW)
EndDeferWindowPos (句柄)

常量:

.版本 2
.常量 HWND_BOTTOM, "1"
.常量 HWND_TOP, "0"
.常量 HWND_TOPMOST, "-1"
.常量 HWND_NOTOPMOST, "-2"
.常量 SWP_SHOWWINDOW, "64"

 

顺便推荐一个易语言用的API查询工具: 易用API伴侣,可以查API参数等,很方便。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式