QQ3131806 发表于 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是创建在主体窗口内的。。。。

QQ3131806 发表于 2010-11-21 15:38:14

嘿嘿,我就是要在主体窗口内创建的,不是要弹出,嘿嘿

飘云 发表于 2010-11-21 15:47:41

回答你那问题,参照物是,最后创建的窗口,所以$aButton1的坐标参照是$Form2,而$Form2的坐标是相对于整个桌面的

ljy1605 发表于 2010-11-22 03:01:44

好东西,学习了。

QQ3131806 发表于 2010-11-22 09:05:37

那这样的话,只能通过算坐标来排列了,没办法说像在KODA里那样设计出窗体代码来了吧?

QQ3131806 发表于 2010-11-22 13:30:47

本帖最后由 QQ3131806 于 2010-11-22 14:36 编辑

唉期待高人回来解惑!

飘云 发表于 2010-11-22 15:46:00

肯定是要定义坐标的,就算是KODA,代码里也一样是坐标数值呀

QQ3131806 发表于 2010-11-22 16:31:44

恩,坐标我是知道肯定要定义的,只不过不知道在KODA上面子窗口的坐标怎么定义!我开两个窗口,在FORM2上面直接添加控件,但是运行后的效果就是添加上的控件显示的位置跟KODA上的坐标不一样,偏差太大!

QQ3131806 发表于 2010-11-23 08:50:48

嘿嘿,终于弄明白了!

laomao127 发表于 2010-11-28 07:09:22

回复 10# QQ3131806


    明白了说说吧 谢谢楼主

QQ3131806 发表于 2010-11-29 09:19:33

父窗口不用管它,你弄子窗口的时候,就对着父窗口把你的子窗口大小调好就行了,然后它的left,跟top值,你就按显示器屏幕的距离来调整就行,子窗口的参照物是整个屏幕,嘿嘿,这也是飘云教的!

QQ3131806 发表于 2010-11-29 09:19:58

子窗口里的按钮,你就还按子窗口里的坐标就行,不用调整

krznz 发表于 2022-3-8 11:15:54

好好学习 天天向上
页: [1]
查看完整版本: [已解决]请问子窗口里的控件坐标设计时是以什么为参照物的?