标签:
工具栏
菜单对程序中的所有命令进行分组防治,而工具栏则提供了快速执行最常用命令的方法。
#!/usr/bin/python # -*- coding:utf-8 -*- import sys from PyQt4 import QtGui, QtCore class MainWindow(QtGui.QMainWindow): def __init__(self, parent = None): QtGui.QMainWindow.__init__(self) self.resize(250, 150) self.setWindowTitle(‘tool bar‘) self.exit = QtGui.QAction(QtGui.QIcon(‘exit.png‘), ‘Exit‘, self) self.exit.setShortcut(‘Ctrl+Q‘) self.connect(self.exit, QtCore.SIGNAL(‘triggered()‘), QtGui.qApp, QtCore.SLOT(‘quit()‘)) self.toolbar = self.addToolBar(‘Exit‘) self.toolbar.addAction(self.exit) app = QtGui.QApplication(sys.argv) main = MainWindow() main.show() sys.exit(app.exec_())
效果:
点击工具栏图标窗口关闭。
self.exit = QtGui.QAction(QtGui.QIcon(‘exit.png‘), ‘Exit‘, self)
self.exit.setShortcut(‘Ctrl+Q‘)
GUI程序的行为是由命令来控制的,这些命令可以来自菜单、上下文菜单、工具栏或它们的快捷方式。PyQt通过引入actions来简化变成难度,一个action对象可以拥有菜单、文本、图标、快捷方式、状态信息、“这是什么?”文本或工具提示等。在我们的示例程序中,我们定义了一个拥有图标/工具提示和快捷方式的action对象。
self.connect(self.exit, QtCore.SIGNAL(‘triggered()‘), QtGui.qApp, QtCore.SLOT(‘quit()‘))
// 这里用
// self.exit.connect(self.exit, QtCore.SIGNAL(‘triggered()‘), QtGui.qApp, QtCore.SLOT(‘quit()‘))
// 令我的感觉好像是用什么来connect是随意的,主要是信号-槽机制的信号与槽之间的关系。
该语句将action对象的triggered()信号连接到与定义的quit()槽函数。
self.toolbar = self.addToolBar(‘Exit‘)
该语句创建一个工具栏,然后使用语句self.toolbar.addAction(self.exit)将action对象(这里是exit)添加到该工具栏。
标签:
原文地址:http://www.cnblogs.com/moonlightpoet/p/5327617.html