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

AutoIt上路03-添加工具栏的相关文章

VC++添加工具栏

VC添加工具栏 方法一:添加ICON图标 1. 新建一个基于对话框的项目:Test 2. 在类CTestDlg中, 添加两个变量: CToolBarCtrl m_ToolBar1; CImageList m_ImageList; 3.添加图标(例5个.icon图标) 4. 在#include "TestDlg.h"中 添加 #define ID_TOOLBAR1 1000 5. 在OnInitDialog()初始化: const int ARR_MAX = 5; m_ImageList

VC对话框添加工具栏

在VC对话框中添加工具栏,要分为如下几步操作. 1.在资源视图中添加toolbar类资源,在工具栏上添加按钮,并命名ID:ID_BTN1,ID_BTN2 2.对话框头文件中,添加变量CToolBar  m_ToolBar; 3.在对话框的OnInitDialogh函数中添加如下代码: // TODO: 在此添加额外的初始化代码       if( !m_ToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE |          CB

为百度阅读web端添加工具栏——百阅栏的诞生

在一个偶然的机会,看到了百度阅读这款产品,找了几本免费的书,打开看了看,总体还不错的样子,但是由于公司电脑的屏幕比较宽,而百度阅读设置的阅读宽度是840px的固定宽度,所以看起来就比较费劲了.宽度不提供调整也就算了,连字体.字体颜色.背景色等都没有提供调整的功能,随便打开一个小说网站基本上都会提供的吧.还有可气的是不让跨页复制,一滚动鼠标,复制的东西就取消了. 看到这么多让人无法忍受的问题后,就去官网反馈,发现官网也是垃圾的不行,反馈方式只有一种--百度阅读贴吧(你妹呀!),反馈了也没人回复,所

iOS开发项目篇—03添加导航控制器

iOS开发项目篇—03添加导航控制器 一.简单说明 分析:分析微博应用,我们需要给每个子控制器都添加一个导航控制器(每个子控制器的导航不一样),所以需要新建一个导航控制器,然后把该导航控制器作为window的根控制器,添加的四个子控制器,分别添加在导航控制器上,也就是说整个项目采用当前主流的UI框架,一个UITabBarController管理着四个UINavigationController,而每个UINavigationController则分别管理着“首页”.“消息”.“发现”和“我”这四

VSTO Word2003 添加菜单栏, 添加工具栏

直接上代码了:   Microsoft.Office.Core.CommandBar menuBar; CommandBarButton ccbtn = null;        CommandBarButton btnRequirementProperty; CommandBarButton btnCancelImport; CommandBarButton btnCancelImport ; Office.CommandBarButton btn ; private void ThisAdd

VC 对话框程序添加工具栏按钮图标及其按钮tooltip

注意:本人使用VC++2010开发环境进行测试. 在使用VC开发对话框程序时不像开发单文档程序和多文档程序那么方便,很多资源都需要自己手动添加.最近在开发一个程序时,想尝试在对话框程序里面添加 工具栏 及其 按钮tooltip,于是便有了这篇文章,希望把经验总结下来以方便自己以后查询以及各位同仁查询! 一.首先建立一个对话框程序 1.添加工具栏资源,并在工具栏资源里添加几个按钮,并将按钮的width 和 height 改为24,也可以根据自己的需要更改尺寸,同时,还要为相应的按钮设置一个ID.具

如何在BCGControlBar界面库的CBCGPFormView子视图里面添加工具栏

最近有一个项目需求,需要在子视图里面添加一个新工具栏用来处理当前视图对应模块的操作.之前在对话框模式下做过添加工具栏的实现,在CBCGPFormView中添加工具栏还是头一次.在这里记录一下,给自己留个备忘,同时假如可以给同样有这样需要的人以帮助那也是极好的. 首先,在CParameterView类中声明一个CBCGPToolBar变量,代码如下: CBCGPToolBar m_wndParameterToolBar; 其次,在CParameterView类的OnCreate消息里面添加如下代码

Qt 给QWidget添加工具栏

在Qt中,给主窗口(QMainWindow类)添加工具栏非常方便,直接使用addToolBar 即可,如下所示: fileToolBar = addToolBar(tr("&File")); fileToolBar->addAction(fileNewAction); fileToolBar->addAction(fileOpenAction); 但是,addToolBar 是QMainWindow 类的函数,在QWidget类中没有addToolBar类似的添加工

给控制器添加工具栏(Swift语言)

//懒加载工具条 private lazy var toolBar: UIToolbar = UIToolbar() //设置底部的工具条 private func setToolBar() { //添加子控件 view.addSubview(toolBar) //添加约束 toolBar.snp_makeConstraints { (make) -> Void in make.bottom.left.right.equalTo(view) make.height.equalTo(40) } /