AutoIt上路03-添加工具栏

AutoIt上路03-添加工具栏

  按照我的设计,程序中会有多个界面,用以实现不同的管理主题。其中程序运行后有个默认界面,然后根据需要再打开更多界面;如果有多个界面打开,则显示在标签卡中,通过标签切换显示。

本文实现标签卡功能,描述其基本用法。
  1。在窗体内创建标签卡控件,GUICtrlCreateTab
  2。为标签卡添加点击事件处理,GUICtrlSetOnEvent
  3。为标签卡添加标签,GUICtrlCreateTabItem
  4。根据需要为标签头设置图片
  5。结束选项标签页的定义,GUICtrlCreateTabItem(“”)

AutoIt内置创建标签卡的函数,提供了基本功能,用户定义函数目录\GUI参考\标签选项卡管理 中提供了更为丰富的函数,两者可以结合使用;当然仅使用自定义函数也可以做出高级功能的应用。

    1. #include <GUIConstantsEx.au3>
    2. #include <GuiTab.au3> ; 用户自定义函数
    3. #include <GuiToolbar.au3>
    4. #include <GuiImageList.au3>
    5. #include <WinAPI.au3>
    6. #include <WindowsConstants.au3>
    7.  
    8. Opt("GUIOnEventMode", 1)
    9.  
    10. Global $itemInToolbar
    11.  
    12. $guiWelcome = GUICreate("威格灵", 400, 200)
    13. GUISetOnEvent($GUI_EVENT_CLOSE, "Func_GUI_EVENT_CLOSE")
    14. $menuFile = GUICtrlCreateMenu ( "文件 &F")
    15. $itemOpenInMenuFile = GUICtrlCreateMenuItem("打开", $menuFile)
    16. GUICtrlCreateMenuItem("", $menuFile)
    17. $itemExitInMenuFile = GUICtrlCreateMenuItem("退出", $menuFile)
    18. GUICtrlSetOnEvent($itemExitInMenuFile, "Func_GUI_EVENT_CLOSE")
    19. $toolbar = _GUICtrlToolbar_Create($guiWelcome)
    20. _GUICtrlToolbar_AddBitmap($toolbar, 1, -1, $IDB_STD_SMALL_COLOR)
    21. Local Enum $id_New = 1000, $id_Open, $id_Save, $id_Find, $id_Help
    22. _GUICtrlToolbar_AddButton($toolbar, $id_New, $STD_FILENEW)
    23. _GUICtrlToolbar_AddButton($toolbar, $id_Open, $STD_FILEOPEN)
    24. _GUICtrlToolbar_AddButton($toolbar, $id_Save, $STD_FILESAVE)
    25. _GUICtrlToolbar_AddButtonSep($toolbar)
    26. _GUICtrlToolbar_AddButton($toolbar, $id_Find, $STD_FIND)
    27. _GUICtrlToolbar_AddButtonSep($toolbar)
    28. _GUICtrlToolbar_AddButton($toolbar, $id_Help, $STD_HELP)
    29.  
    30. ; 1。创建标签卡控件(x-距离窗体左边,y-距离窗体顶边,wh),注意上面的工具条也占用高度,同时菜单栏底边设为0
    31. $tabWelcome = GUICtrlCreateTab ( 1, 28, 398, 130) ; 标签头的高度约 22
    32. ; 2。为标签卡添加点击事件处理
    33. GUICtrlSetOnEvent($tabWelcome, "Func_TabWelcome")
    34. ; 3。添加标签(标题)。起始索引为0
    35. $item0InTabWelcome = GUICtrlCreateTabItem("工程师记录")
    36. ; 4。在标签内添加控件。标签内的控件位置都是相对于窗体的,而不是此标签卡
    37. GUICtrlCreateLabel("文本 0", 3, 52, 50, 20)
    38. ; 5。添加新的标签
    39. $item1InTabWelcome = GUICtrlCreateTabItem("产品展示")
    40. GUICtrlCreateCombo("", 3, 52, 160, 120) ; 下拉框
    41. GUICtrlSetData(-1, "数字地理教室|数字数学教师|数字化学教室|互动物理教室|崔维友作品|vigiles", "崔维友作品") ; 添加项目,默认选中 "崔维友作品"
    42.  
    43. $item2InTabWelcome = GUICtrlCreateTabItem("学校信息管理")
    44. GUICtrlSetState(-1, $GUI_SHOW) ; 将首先显示
    45. GUICtrlCreateButton("确定", 3, 52, 50, 22)
    46. ;----------------------------------------- 可选 start ----------------------------------------
    47. ; 创建图像列表(ImageList)控件
    48. $imgList = _GUIImageList_Create()
    49. ; 添加一或多个图像到图像列表(图像列表控件,调用WinAPI.au3创建单色位图)
    50. _GUIImageList_Add($imgList, _WinAPI_CreateSolidBitmap($guiWelcome, 0xFF0000, 16, 16))
    51. _GUIImageList_Add($imgList, _WinAPI_CreateSolidBitmap($guiWelcome, 0x00FF00, 16, 16))
    52. _GUIImageList_Add($imgList, _WinAPI_CreateSolidBitmap($guiWelcome, 0x0000FF, 16, 16))
    53. ;设置(标签选项卡)控件关联的图像列表(标签卡,图像列表)
    54. _GUICtrlTab_SetImageList($tabWelcome, $imgList)
    55. ; 设置(标签选项卡)的标签图像(标签卡,标签索引-始于0,图像索引-始于0
    56. _GUICtrlTab_SetItemImage($tabWelcome, 0, 0)
    57. _GUICtrlTab_SetItemImage($tabWelcome, 1, 1)
    58. _GUICtrlTab_SetItemImage($tabWelcome, 2, 2)
    59. ;----------------------------------------- 可选 end ------------------------------------------
    60. ; 6。结束选项标签页的定义
    61. GUICtrlCreateTabItem("")
    62.  
    63. ; 后于标签卡创建,会在其顶层。注意xy,否则可能遮挡标签卡
    64. GUICtrlCreateLabel("文本 3", 1, 160, 50, 20)
    65.  
    66. GUISetState(@SW_SHOW, $guiWelcome)
    67.  
    68. GUIRegisterMsg($WM_NOTIFY, "_WM_NOTIFY")
    69.  
    70. ;-------------------------------- 分割线 -----------------------------
    71. While 1
    72. Sleep(200)
    73. WEnd
    74.  
    75. Func Func_GUI_EVENT_CLOSE ()
    76. Exit
    77. EndFunc
    78.  
    79. ; 响应标签卡点击事件
    80. Func Func_TabWelcome ()
    81. ; 获得标签索引。@GUI_CtrlId宏命令,获取刚刚点击的控件ID
    82. $ctrlId = GUICtrlRead (@GUI_CtrlId)
    83. ; 获得标签标题文本(控件,索引)
    84. $itemText = _GUICtrlTab_GetItemText(@GUI_CtrlId, $ctrlId)
    85. MsgBox(0, "提示", "你点击的标签卡:" & $ctrlId & " - " & $itemText )
    86. EndFunc
    87.  
    88. Func _WM_NOTIFY($hWndGUI, $MsgID, $wParam, $lParam)
    89. ; 未改动,内容略
    90. EndFunc

转载于:https://www.cnblogs.com/itviplearning/p/7047080.html

AuAceBox 是 Skyfore 开发的一款 Au3 辅助工具:该工具涵盖了大多 数 Au3 编程常用操作,可完美替代官方的 AccAu3Box. 开发语言:AU3、C++、等等,所以文件偏大! 版本特点: 1.酷炫 UI,扁平化窗口设计 2.常用操作一键集成,绝对给力; 3.支持用户自定义工具,方便功能扩展,支持展开环境变量 使用帮助: 1.程序中大部分都有气泡提示,根据气泡提示操作即可。 2.配置 AuMFCompiler 1.程序默认不自带 AuMFCompiler,如果您需要使用,请根据以下步骤配置: 2.到 Au3.Cc -> AuMFC专区 花200A币下载 AuMFC 3.打开主程序 AuAceBox.exe 打开 主菜单 -> 扩展功能 -> 配置 AuMFC 编译器 4.根据提示操作,完成后您就可以直接在主界面调用 AuMFC 编译器了! 3.创建桌面方式 1.如果您觉得本工具好用的话,可以按以下步骤直接创建快捷方式: 2.打开主程序 AuAceBox.exe 打开 主菜单 -> 扩展功能 -> 程序设置 -> 选中 为 AuAceBox 创建桌面快捷方式 即可! 3.然后桌面上就会跳出快捷方式 "AuAceBox 专业版",OK,以后您就可以直接通过快捷方式运行本工具了 4.用户自定义工具 1.AuAceBox v2.1+ 版本提供用户自定义工具功能 2.点击 首页大图标 -> 实用工具汇总 -> 用户工具 -> 配置用户工具箱 即可配置工具; 3.工具格式:每行一个工具,格式如: 工具名=路径(或URL) 4.自定义工具支持如下环境变量: %APPDIR%:AuAceBox.exe 所在目录 %AU3DIR%:AutoIt3.exe 所在目录 %ScriptFile%:载入 Au3 脚本路径 5.检查更新窗口弹出为何有延时 1.更新先获取网络版本号,更新日志,更新地址 2.再显示更新窗口,所以会有些延迟,具体时间与网络环境有关 6.本程序是否开源 1.对不起,本程序为闭源程序,未来也不打算开源 2.要问原因?1.这个程序本来就没什么开源价值 2.伸手党泛滥... AutoIt v3 编程交流学习网 - Au3.Cc 版本更新日志: [2015/3/7 2.1.2.6] 1.修正 取消所有窗口半透明 2.修正 更新窗口若无可用更新自适应为 初始化程序 3.新增 原生支持托盘功能,适应不同用户需求 4.新增 托盘双击显示、隐藏主窗口 5.新增 托盘显示 内置/用户 工具 6.修正 关于对话框标题栏显示程序版本号 7.新增 Ctrl+F12 显示隐藏主界面 8.修正 AuAceBox 更新逻辑 9.新增 AuAceBox 设置中心 AuAceManager 10.新增 支持手动限制自动吸附 11.优化 AuAceBox 吸附效率/未知吸附情况 12.修正 新功能增加后对应控件/托盘说明 [2015/3/5 2.1.2.4] 1.新增 检查更新功能 2.新增 AuAceBox 专属浏览器 3.新增 修正 N 多窗口主题 4.新增 无人值守自动更新 功能 5.新增 Au3.Cc 链接支持两种打开方式 6.修正 菜单文字以及描述 7.修正 访问网站链接指向 AuAceBox 专属浏览器. 8.修复 2.1 版本中的某些 BUG. 9.修正 关于页文字说明来自 ReadMe.Txt (如果存在) 10.优化 保证效率下减小附加组件内存及CPU占用率 [2015/3/2 2.1.0.34] 1.删除 Au3 脚本录制工具链接 2.新增 内置实用工具 ,用于放置 AU3 辅助工具,从此本人写的所有 AU3 辅助工具就都会直接嵌入至 AuAceBox ! 3.新增 GUID 生成器; 4.新增 RegExTester 内嵌插件,绝对给力! [2015/3/2 2.1.0.9] 1.调整 根据用户反馈,调整编译栏背景色 2.修正 部分文字描述 [2015/3/1 2.1.0.6] 1.调整 调整UI,使其看起来更和谐; 2.修正 AuAceBox.Tool 增加部分工具; [2015/3/1 2.1.0.5] 1.修正 修复1.0版本的 N 多 BUG; 2.修正 完全重写代码,加快程序运行速度 3.新增 用户自定义工具功能 4.修正 窗口乱跑的问题 5.去除 托盘,用户定义工具集成于图标菜单 6.新增 支持程序环境变量(支持系统原有的如%WINDIR%) %AU3DIR% %APPDIR% %ScriptFile%
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值