GUI 很容易入门,但也很容易写散:一开始能放按钮和输入框,后面加列表、菜单、状态栏、事件处理时就乱了。我建议先别急着美化,先把窗口、控件、事件、数据这几层分清楚。
我一般这样学
- 小工具窗口:先掌握
Gui, Add、Gui, Show。 - 读取和修改控件:用
GuiControlGet、GuiControl。 - 表格数据:用
ListView。 - 树形结构:用
TreeView。 - 右键菜单、托盘菜单:用
Menu。 - 复杂界面美化:先做功能,再套模板或封装库。
最小 GUI 示例
GUI 的第一步不是美化,而是让输入、按钮、结果显示跑通。
#Requires AutoHotkey v1.1 Gui, Add, Text,, 请输入姓名: Gui, Add, Edit, vUserName w220 Gui, Add, Button, gShowName, 确定 Gui, Show,, 我的第一个 GUI return ShowName: GuiControlGet, name,, UserName MsgBox, % "你好," name return GuiClose: ExitApp
GuiControl 和 GuiControlGet
如果你只想读一个控件,或者动态修改某个控件内容,就用 GuiControlGet 和 GuiControl。这样比一口气提交整个窗口更直观。
GuiControlGet, name,, UserName GuiControl,, UserName, % name " 已处理"
ListView 适合表格
只要你的界面里出现多行、多列、选择、排序、批量处理,优先考虑 ListView,不要用一堆 Text/Edit 硬拼。
Gui, Add, ListView, w420 r8 vMyLV, 文件名|状态
LV_Add("", "a.txt", "待处理")
LV_Add("", "b.txt", "已完成")
Gui, Show,, ListView 示例
return
GuiClose:
ExitApp
菜单适合命令入口
右键菜单、托盘菜单、工具菜单都可以后面再学。如果按钮太多,我一般会先考虑菜单,不会把窗口塞满。菜单相关内容建议等基本窗口和 ListView 都熟了之后再补。
GUI 学习顺序
推荐顺序是:先做一个能读取输入的小窗口,再学控件读写,然后上 ListView,最后再考虑菜单、消息监听 OnMessage 和非标准界面模板。这样不容易一开始就被美化和消息机制带偏。
站内延伸
声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。

评论(0)