锋哥原创的PyQt6视频教程:
2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计32条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~、第2讲 PyQt6库和工具库QTDesigner安装与配置、第3讲 PyQt6第一个程序HelloWorld实现等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV11C4y1P7fj/
QToolButton控件是一个工具按钮,它本质上是一个按钮,只是在按钮中提供了默认文本“…”和可选的箭头类型;
QToolButton控件的使用方法与QPushButton类似,不同的是,QToolButton控件可以设置工具按钮的显示样式和箭头类型,其中,工具按钮的显示样式通过QToolButton类的setToolButtonStyle()方法进行设置;
工具按钮的箭头类型通过QToolButton类的setArrowType()方法进行设置;
1、工具按钮初了解 setText():设置按钮提示文本 setIcon(QIcon()):设置按钮图标 setIconSize(QSize):设置图标大小 setToolTip(str):因为图标和提示文本同时出现时,只显示图标。通过这个可以设置不一样的提示文本 2、样式设置 setToolButtonStyle(Qt.ToolButtonStyle) Qt.ToolButtonStyle的风格有以下取值: Qt.ToolButtonIconOnly:仅显示图标 Qt.ToolButtonTextOnly:仅显示文字 Qt.ToolButtonTextBesideIcon:文本显示在图标旁边 Qt.ToolButtonTextUnderIcon:文本显示在图标下方 Qt.ToolButtonFollowStyle:遵循风格 3、箭头样式 setArrowType(Qt.ArrowType) Qt.ArrowType的风格如下: Qt.NoArrow:无箭头 Qt.UpArrow:向上箭头 Qt.DownArrow:向下箭头 Qt.LeftArrow:向左箭头 Qt.RightArrow:向右箭头 4、自动提升 setAutoRaise(Bool):True:自动提升 5、菜单及弹出方式 setPopupMode(QToolButton.ToolButtonPopupMode) QToolButton.ToolButtonPopupMode的风格如下: QToolButton.DelayedPopup:鼠标按住一会才显示菜单 QToolButton.MenuButtonPopup:有一个专门提示的提示箭头 QToolButton.InstantPopup:点了按钮就显示菜单
UI生成参考代码:
# Form implementation generated from reading ui file 'QPushButton按钮控件.ui'
#
# Created by: PyQt6 UI code generator 6.4.2
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.from PyQt6 import QtCore, QtGui, QtWidgetsclass Ui_Form(object):def setupUi(self, Form):Form.setObjectName("Form")Form.resize(400, 300)self.toolButton = QtWidgets.QToolButton(parent=Form)self.toolButton.setGeometry(QtCore.QRect(180, 90, 61, 41))self.toolButton.setText("")icon = QtGui.QIcon()icon.addPixmap(QtGui.QPixmap("C:/Users/java1234/Desktop/tool.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)self.toolButton.setIcon(icon)self.toolButton.setPopupMode(QtWidgets.QToolButton.ToolButtonPopupMode.MenuButtonPopup)self.toolButton.setAutoRaise(False)self.toolButton.setArrowType(QtCore.Qt.ArrowType.NoArrow)self.toolButton.setObjectName("toolButton")self.retranslateUi(Form)QtCore.QMetaObject.connectSlotsByName(Form)def retranslateUi(self, Form):_translate = QtCore.QCoreApplication.translateForm.setWindowTitle(_translate("Form", "Form"))