PyQt5工具栏控件QToolBar介绍
QToolBar控件是由文本按钮,图标或其他小控件按钮组成的可移动面板,通常位于菜单栏下方
QToolBar类中的常用方法
方法 | 描述 |
---|---|
addAction() | 添加具有文本或图标的工具按钮 |
addSeperator() | 分组显示工具按钮 |
addWidget() | 添加工具栏中按钮以外的控件 |
addToolBar() | 使用QMainWindow类的方法添加一个新的工具栏 |
setMovable() | 工具变得可移动 |
setOrientation() | 工具栏的方向可以设置为Qt.Horizontal或Qt.certical |
每当单击工具栏中的按钮时,都将发射actionTriggered信号,另外,这个信号将关联的QAction对象的引用发到连接的槽函数上
QToolBar使用实例
代码语言:javascript复制import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
class ToolBarDemo(QMainWindow):
def __init__(self,parent=None):
super(ToolBarDemo, self).__init__(parent)
#设置标题与初始大小
self.setWindowTitle('toolbar例子')
self.resize(300,200)
#垂直布局
layout=QVBoxLayout()
#在工具栏区域添加文件工具栏
tb=self.addToolBar('File')
#添加图形按钮
new=QAction(QIcon('imagesnew.png'),'new',self)
tb.addAction(new)
open=QAction(QIcon('imagesopen.png'),'open',self)
tb.addAction(open)
save=QAction(QIcon('imagessave.png'),'save',self)
tb.addAction(save)
#图形对象点击触发自定义槽函数
tb.actionTriggered[QAction].connect(self.toolbtnpressed)
self.setLayout(layout)
def toolbtnpressed(self,a):
#输出,点击地图性按钮
print('pressed tool button is ',a.text())
if __name__ == '__main__':
app=QApplication(sys.argv)
demo=ToolBarDemo()
demo.show()
sys.exit(app.exec_())
运行程序,显示效果如图
QToolBar代码分析
在这个例子中,首先调用addToolBar()方法在工具栏区域添加文件工具栏
代码语言:javascript复制 tb=self.addToolBar('File')
然后,添加具有文本标题的工具按钮,工具栏通常包含图形按钮,具有图标和名称的QAction对象将被添加到工具栏中
代码语言:javascript复制new=QAction(QIcon('imagesnew.png'),'new',self)
tb.addAction(new)
open=QAction(QIcon('imagesopen.png'),'open',self)
tb.addAction(open)
save=QAction(QIcon('imagessave.png'),'save',self)
tb.addAction(save)
最后,将actionTriggered信号连接到槽函数toolbtnpressed()
代码语言:javascript复制tb.actionTriggered[QAction].connect(self.toolbtnpressed)
本文详细讲解了PyQt5工具栏控件QToolBar的详细使用方法与实例,更多关于PyQt5库控介绍请查看下面的相关链接