找回密码
 加入
搜索
查看: 6784|回复: 13

[交流] [已解决]请问子窗口里的控件坐标设计时是以什么为参照物的?

[复制链接]
发表于 2010-11-21 13:08:20 | 显示全部楼层 |阅读模式
本帖最后由 QQ3131806 于 2010-11-23 08:51 编辑

我现在是有两个窗口,一个父窗口FORM1,另一个字窗口FORM2,在FORM2里的按钮,它的坐标比如说宽,高,左,顶部之类的这些坐标是以FORM2为参照物还是FORM1,而且在设计的时候,因为没法直观的看着FORM2,所以不知道在KODA里怎么调整FORM2里控件的坐标!

这是在KODA里设计的,FORM2是子窗口,上面带一个按钮aButton


这是运行后的效果,KODA里aButton的坐标是在大约中间的位置,但是运行后,却是跑到右下角了,汗,不知道该怎么调整子窗口里的控件坐标!


代码如下:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 623, 449, 192, 114)
$Button1 = GUICtrlCreateButton("Button1", 56, 136, 75, 25)

$Form2 = GUICreate("Form2", 416, 357, 347, 138,$WS_CHILD,"",$Form1)
$aButton1 = GUICtrlCreateButton("aButton1", 136, 112, 75, 25)
GUISetState(@SW_SHOW,$Form1)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $Button1
                        GUISetState(@SW_SHOW,$Form2)
                        
        EndSwitch
WEnd

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-11-21 14:57:50 | 显示全部楼层
把$Form2 = GUICreate("Form2", 416, 357, 347, 138,$WS_CHILD,"",$Form1)改成$Form2 = GUICreate("Form2", 416, 357, 347, 138,-1,"",$Form1),就是弹出窗口了,$WS_CHILD是创建在主体窗口内的。。。。
 楼主| 发表于 2010-11-21 15:38:14 | 显示全部楼层
嘿嘿,我就是要在主体窗口内创建的,不是要弹出,嘿嘿
发表于 2010-11-21 15:47:41 | 显示全部楼层
回答你那问题,参照物是,最后创建的窗口,所以$aButton1的坐标参照是$Form2,而$Form2的坐标是相对于整个桌面的
发表于 2010-11-22 03:01:44 | 显示全部楼层
好东西,学习了。
 楼主| 发表于 2010-11-22 09:05:37 | 显示全部楼层
那这样的话,只能通过算坐标来排列了,没办法说像在KODA里那样设计出窗体代码来了吧?
 楼主| 发表于 2010-11-22 13:30:47 | 显示全部楼层
本帖最后由 QQ3131806 于 2010-11-22 14:36 编辑

唉期待高人回来解惑!
发表于 2010-11-22 15:46:00 | 显示全部楼层
肯定是要定义坐标的,就算是KODA,代码里也一样是坐标数值呀
 楼主| 发表于 2010-11-22 16:31:44 | 显示全部楼层
恩,坐标我是知道肯定要定义的,只不过不知道在KODA上面子窗口的坐标怎么定义!我开两个窗口,在FORM2上面直接添加控件,但是运行后的效果就是添加上的控件显示的位置跟KODA上的坐标不一样,偏差太大!
 楼主| 发表于 2010-11-23 08:50:48 | 显示全部楼层
嘿嘿,终于弄明白了!
发表于 2010-11-28 07:09:22 | 显示全部楼层
回复 10# QQ3131806


    明白了说说吧 谢谢楼主
 楼主| 发表于 2010-11-29 09:19:33 | 显示全部楼层
父窗口不用管它,你弄子窗口的时候,就对着父窗口把你的子窗口大小调好就行了,然后它的left,跟top值,你就按显示器屏幕的距离来调整就行,子窗口的参照物是整个屏幕,嘿嘿,这也是飘云教的!
 楼主| 发表于 2010-11-29 09:19:58 | 显示全部楼层
子窗口里的按钮,你就还按子窗口里的坐标就行,不用调整
发表于 2022-3-8 11:15:54 来自手机 | 显示全部楼层
好好学习 天天向上
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-3-29 17:09 , Processed in 0.076871 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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