热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

工具栏_AutoIt上路03添加工具栏

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








推荐阅读
  • 本文详细介绍了GetModuleFileName函数的用法,该函数可以用于获取当前模块所在的路径,方便进行文件操作和读取配置信息。文章通过示例代码和详细的解释,帮助读者理解和使用该函数。同时,还提供了相关的API函数声明和说明。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • C# WPF自定义按钮的方法
    本文介绍了在C# WPF中实现自定义按钮的方法,包括使用图片作为按钮背景、自定义鼠标进入效果、自定义按压效果和自定义禁用效果。通过创建CustomButton.cs类和ButtonStyles.xaml资源文件,设计按钮的Style并添加所需的依赖属性,可以实现自定义按钮的效果。示例代码在ButtonStyles.xaml中给出。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 本文讨论了在VMWARE5.1的虚拟服务器Windows Server 2008R2上安装oracle 10g客户端时出现的问题,并提供了解决方法。错误日志显示了异常访问违例,通过分析日志中的问题帧,找到了解决问题的线索。文章详细介绍了解决方法,帮助读者顺利安装oracle 10g客户端。 ... [详细]
  • 本文介绍了pack布局管理器在Perl/Tk中的使用方法及注意事项。通过调用pack()方法,可以控制部件在显示窗口中的位置和大小。同时,本文还提到了在使用pack布局管理器时,应注意将部件分组以便在水平和垂直方向上进行堆放。此外,还介绍了使用Frame部件或Toplevel部件来组织部件在窗口内的方法。最后,本文强调了在使用pack布局管理器时,应避免在中间切换到grid布局管理器,以免造成混乱。 ... [详细]
author-avatar
一个醒不来的梦zyc
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有