首页 > 编程语言 > 详细

Python pyQt4学习笔记2

时间:2018-01-09 22:53:37      阅读:222      评论:0      收藏:0      [点我收藏+]

 

例子:状态栏、菜单栏和工具栏

import sys
from PyQt4 import QtGui


class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()
        self.initUI()


    def initUI(self):               

        textEdit = QtGui.QTextEdit()
        self.setCentralWidget(textEdit)

        exitAction = QtGui.QAction(QtGui.QIcon(), Exit, self)
        exitAction.setShortcut(Ctrl+Q)
        exitAction.setStatusTip(Exit application)
        exitAction.triggered.connect(self.close)

        bar1=self.statusBar()
     bar1.showMessage(‘Ready‘) menubar
= self.menuBar() fileMenu = menubar.addMenu(&File) fileMenu.addAction(exitAction) toolbar = self.addToolBar(Exit) toolbar.addAction(exitAction) self.setGeometry(300, 300, 350, 250) self.setWindowTitle(Main window) self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == __main__: main()

运行效果如下:

技术分享图片

 

下面解释上面的代码:

class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()
        self.initUI()

注意Example类继承于QtGui.QMainWindow

QtGui.QMainWindow类提供了创建应用主窗口的方法,这使得用状态栏(statusbar)、菜单栏(menubar)、工具栏(toolbar)创建一个传统的应用框架成为可能。

 

textEdit = QtGui.QTextEdit()
self.setCentralWidget(textEdit)

这里我们创建了一个文本编辑框(text edit)部件。我们把它设置成QtGui.QMainWindow的中央部件,中央部件占据了各种栏之外所有的剩余空间

 

        exitAction = QtGui.QAction(QtGui.QIcon(), Exit, self)
        exitAction.setShortcut(Ctrl+Q)
        exitAction.setStatusTip(Exit application)
        exitAction.triggered.connect(self.close)

        menubar = self.menuBar()
        fileMenu = menubar.addMenu(&File)
        fileMenu.addAction(exitAction)

在上面这个示例中,我们创建了只由一个菜单组成的菜单栏。这个菜单也仅仅拥有一个选项【这里原文是action,为了方便理解,我们下面将这个action有时翻译成选项。】:结束应用。而且我们给这个选项添加了一个快捷键:Ctrl+Q。

Qt.Gui.QAction是这个行为的一个抽象。在上面这三行中,我们创建了有着自己图标和名字一个选项,而且,我们给这个行为定义了一个快捷键。第三行创建了一个status tip,它的作用是鼠标放在这个选项上时,可以在状态栏中显示出状态“Exit application”。

当我们选择了这个选项时,一个触发信号(triggered signal)被发出了。这个信号和QtGui.QApplication部件的quit()方法相联系(connect),所以信号发出后,程序终止。

menuBar()方法创建了一个菜单栏。这里我们在菜单栏的基础上创建了一个file菜单,并在里面添加了exit选项

 

  bar1=self.statusBar()
  bar1.showMessage(Ready)

为了得到一个状态栏,我们调用了QtGui.QMainWindow类中的statusBar()方法【注意Example是继承QMainWindow的】。函数调用创建了一个状态栏,接下来的showMessage()函数调用返回了一个状态栏对象,showMessage()里面的参数是显示在状态栏中的。

 toolbar = self.addToolBar(Exit)
 toolbar.addAction(exitAction)

我们创建了一个工具栏并且给里面加入了一个选项, 就是菜单选项exitAction 

 

Python pyQt4学习笔记2

原文:https://www.cnblogs.com/hackpig/p/8253944.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!