找回密码
 加入
搜索
查看: 2955|回复: 14

[交流] 关于GUICtrlCreate函数的小问题[已解决]

  [复制链接]
发表于 2016-4-21 10:26:35 | 显示全部楼层 |阅读模式
本帖最后由 cashiba 于 2016-4-21 11:34 编辑

关于这类函数:
GUICtrlCreateEdit("文本", 左距, 顶距[, 宽度[, 高度[, 样式 = -1[, 扩展样式 = -1]]]])
小白问两个小问题:
1、上面的可省略参数,如果有的省略(采取默认值),有的不省略,比喻宽度或高度,该怎么写?样式和扩展样式可以用-1代替默认值;宽度和高度默认值怎么表示?
    GUICtrlCreateEdit("文本", 左距, 顶距, [宽度], 高度,  -1,  -1)
GUICtrlCreateEdit("编辑框", 15,10, "", 36,  -1,  -1)这样写对吗?
2、有没有类似WinGetClienSize或WinGetPos、ControlGetPos这类的函数,可以获取某个GUI控件的位置和尺寸(左距, 顶距, 宽度, 高度)?
发表于 2016-4-21 10:38:09 | 显示全部楼层
回复 1# cashiba

1.預設值  內定植 用 -1 或者 Default

2. 查看 WINAPI 說明  有 UDF

评分

参与人数 1金钱 +20 收起 理由
cashiba + 20

查看全部评分

 楼主| 发表于 2016-4-21 10:50:06 | 显示全部楼层
回复  cashiba

1.預設值  內定植 用 -1 或者 Default

2. 查看 WINAPI 說明  有 UDF
kk_lee69 发表于 2016-4-21 10:38
谢谢kk_lee69老师!
1、默认值内定都是用-1 或者 Default代替吗?很多函数帮助文件里语焉不详,新手摸不着头脑阿,还有为可以用""省略呢
2、只看了GUI块里的UDF,没想到WINAPI里还有GUI函数。
   经测试ControlGetPos+GUI控件ID可以获取GUI控件的位置和尺寸。GUI控件属于标准MS控件吧?
发表于 2016-4-21 10:50:35 | 显示全部楼层
帮助中有介绍-1或者default;
另一个应该用_WinAPI_GetWindowRect吧。

评分

参与人数 1金钱 +20 收起 理由
cashiba + 20

查看全部评分

发表于 2016-4-21 10:55:56 | 显示全部楼层
回复 3# cashiba

說明書 3.3.8 以前版本 分 AUTOIT 說明書   與 UDF 的說明說

以後的版本 好像合再一起了

AU3 有很多 API 函數 都放在 UDF 的說明檔案裏面

請可以看一下
 楼主| 发表于 2016-4-21 11:05:16 | 显示全部楼层
帮助中有介绍-1或者default;
另一个应该用_WinAPI_GetWindowRect吧。
haijie1223 发表于 2016-4-21 10:50
谢谢haijie1223版主!

如上,帮助文件里讲得很少,无示例,而且用的是句柄。一般GUICtrlCreate函数都是返回控件ID吧,可以当做句柄用吗?
刚才用ControlGetPos+GUI控件ID也可以获取GUI控件的位置和尺寸,
ControlGetPos("","",控件ID)
能解决问题也算不错

本帖子中包含更多资源

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

×
发表于 2016-4-21 11:15:01 | 显示全部楼层
回复 6# cashiba


    这个函数是返回一个结构体,里面包含坐标信息。
发表于 2016-4-21 11:22:16 | 显示全部楼层
回复 6# cashiba

一般GUICtrlCreate函数都是返回控件ID吧,可以当做句柄用??

不是有返回句柄 的函數??   GUICtrlGetHandle

理論上 可以直接用 UDF 通常會考慮到  自動幫你轉換
 楼主| 发表于 2016-4-21 11:29:07 | 显示全部楼层
回复  cashiba
一般GUICtrlCreate函数都是返回控件ID吧,可以当做句柄用??
不是有返回句柄 的函數?? ...
kk_lee69 发表于 2016-4-21 11:22
惭愧!,最近才开始看GUI方面,示例里好像大部分都是返回ID,没太注意这个函数。但是看这个函数GUICtrlGetHandle(控件ID),也是基于控件ID。不算完美,还不如直接用控件ID了
 楼主| 发表于 2016-4-21 11:33:52 | 显示全部楼层
问题到此算是解决了,再次感谢kk_lee69和haijie1223两位老师!
发表于 2016-4-21 11:37:09 | 显示全部楼层
LZ提问频率很高啊,这样很难提高自学能力…
发表于 2016-4-21 11:37:42 | 显示全部楼层
回复 9# cashiba

有些函數 一定要句柄的  但是 你創建出來的都是 ID

所以這時候 GUICtrlGetHandle(控件ID)  這個就有用途啦
 楼主| 发表于 2016-4-21 19:40:58 | 显示全部楼层
LZ提问频率很高啊,这样很难提高自学能力…
afan 发表于 2016-4-21 11:37
所提问题大部分都是AU3语法有别于其它语言的的地方,提一次问胜过三天不着要领的东看西看....比喻刚开始不同版本的scite得不到正确结果的问题,新手如果憋着不好意思问,要被折腾死....
 楼主| 发表于 2016-4-21 19:46:06 | 显示全部楼层
回复  cashiba
有些函數 一定要句柄的  但是 你創建出來的都是 ID
所以這時候 GUICtrlGetHandle(控 ...
kk_lee69 发表于 2016-4-21 11:37
目前还没学到那个深度,刚接触GUI呢,不过kk_lee69老师一句话说到该函数的要领上,令人印象深刻....感谢!
发表于 2016-4-28 20:47:23 | 显示全部楼层
学习啦看似简单实则难懂
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-4-20 14:59 , Processed in 0.089914 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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