使用toolBox开发应用时,通过Designer设计ui界面时,只能在Designer中设计toolBox放置的位置以及增加标签(包括设定项名称、标签的文本、图标和工具提示信息)以及指定当前项,但无法指定标签部件项对应的部件。因此如果要结合Designer来进行工具箱的应用开发,可以借鉴如下步骤:

  1. 设计UI界面,并放置toolBox;
  2. 在ui中鼠标右键选中toolBox,通过“insert page”添加项,并指定项的项名称、标签的文本、图标和工具提示信息。当然如果嫌麻烦或者需要动态生成标签部件项也可以跳过本步骤;
  3. 为标签部件项指定对应部件

    本步骤只能通过代码实现,如果步骤2未执行,则直接使用insertItem和addItem方法进行项的增加,否则需要先使用removeItem()删除对应项再使用insertItem和addItem方法进行项的增加,所以步骤2其实执行后更麻烦,唯一的好处是能预览界面的情况,且标签的文本、图标和tooltip直接获取原来标签的即可无需在代码中指定。
注意:

在调用insertItem和addItem方法时,其QWidget参数为标签部件项下面要显示的部件实例,如上面截图三个项分别是一个自定义窗口、一个QCalendarWidget日历部件、一个QLCDNumber电子显示屏部件,直接用这些对象实例作为参数传递给insertItem和addItem方法。

例如设定电子显示屏显示当前时间的示例代码如下:

	clock = QtWidgets.QLCDNumber()
time = QtCore.QTime().currentTime()
clock.display(time.toString("hh:mm"))
icon = QtGui.QIcon(r"c:\temp\icon2.gif")
self.toolBox.addItem(clock, icon, '时钟')

运行界面:

关于工具箱的作用请参考《PyQt(Python+Qt)学习随笔:工具箱(QToolBox)的用途及标签部件项(tabbed widget item)作用介绍》。

老猿Python,跟老猿学Python!

最新文章

  1. 操作系统篇-调用门与特权级(CPL、DPL和RPL)
  2. 伪类before和after
  3. 【动态规划】bzoj1642 [Usaco2007 Nov]Milking Time 挤奶时间
  4. php实现SESSION跨域
  5. caffe学习系列(7):Blob,layer,Net介绍
  6. windows+apache2.2.9+php5.4.41+mysql安装
  7. ASP.NET MVC中混合WebForm
  8. 我摘录的js代码
  9. 可爱的 Python : Python中的函数式编程,第三部分
  10. Hadoop--序列化
  11. SharePoint 2013 搜索SharePoint 特定列和特定文档(自己定义搜索)
  12. ECMAScript6新特性之let、const
  13. GUI与UI的区别
  14. Hibernate【查询、连接池、逆向工程】
  15. 在整合spring和mongodb中,提示at org.springframework.data.mapping.model.BasicPersistentEntity.findAnnotation(
  16. Leetcode 7.反转整数 By Python
  17. 函数式编程(九)——map,filter,reduce
  18. (树)Subtrees -- hdu -- 5524
  19. linux ---jenkins的安装与配置
  20. Java并发(十五):并发工具类——信号量Semaphore

热门文章

  1. 02 . Vue入门基础之条件渲染,列表渲染,事件处理器,表单控件绑定
  2. Zabbix实现电话告警通知的配置方法分享
  3. Socket shutdown close简要分析
  4. linux之NTP服务
  5. windows下命令行设置静态IP
  6. Linux(CentOS6.8)配置Redis
  7. Linux学习 - 02 使用 - Centos8 - 网络配置相关
  8. Java 枚举 enum 详解
  9. Jmeter (三)变量、参数化、函数
  10. 图像分割必备知识点 | Unet详解 理论+ 代码