QWidget 部件是PyQt4 中所有用户界面类的父类
。u‘你好‘
。 在下面的例子中有体现。QMainWindow类用来创建应用程序的主窗口。通过该类,我们可以创建一个包含状态栏,工具栏和菜单栏的经(老)典(套)应用程序框架。(虽老套,但基础还是要尽量牢固)
#! /usr/bin/python # -*- coding:utf8 -*- import sys from PyQt4 import QtGui class MainWindow(QtGui.QMainWindow): def __init__(self, parent=None): QtGui.QMainWindow.__init__(self) self.resize(250, 150) self.setWindowTitle(u‘主窗口‘) self.statusBar().showMessage(u‘就绪‘) app = QtGui.QApplication(sys.argv) main = MainWindow() main.show() sys.exit(app.exec_())在这里它继承的是QMainWindow类,和上一节有点不同,上节都是QWidget。
#! /usr/bin/python # -*- coding:utf8 -*- 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(u‘主窗口‘) self.statusBar().showMessage(u‘就绪‘) exit = QtGui.QAction(QtGui.QIcon(‘./1.ico‘), u‘退出‘, self) exit.setShortcut(‘Ctrl+Q‘) exit.setStatusTip(u‘退出应用‘) exit.connect(exit, QtCore.SIGNAL(‘triggered()‘), QtGui.qApp, QtCore.SLOT(‘quit()‘)) #self.statusBar() menubar = self.menuBar() file = menubar.addMenu(u‘&文件‘) file.addAction(exit) app = QtGui.QApplication(sys.argv) main = MainWindow() main.show() sys.exit(app.exec_())
它和菜单栏大同小异。略
学习了pyqt的主窗口的菜单栏,工具栏,状态栏
综合示例代码#! /usr/bin/python # -*- coding:utf8 -*- 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(u‘主窗口‘) self.statusBar().showMessage(u‘就绪‘) exit = QtGui.QAction(QtGui.QIcon(‘./1.ico‘), u‘退出‘, self) exit.setShortcut(‘Ctrl+Q‘) exit.setStatusTip(u‘退出应用‘) exit.connect(exit, QtCore.SIGNAL(‘triggered()‘), QtGui.qApp, QtCore.SLOT(‘quit()‘)) #self.statusBar() menubar = self.menuBar() file = menubar.addMenu(u‘&文件‘) file.addAction(exit) textEdit = QtGui.QTextEdit() self.setCentralWidget(textEdit) self.toolbar = self.addToolBar(‘Exit‘) self.toolbar.addAction(exit) app = QtGui.QApplication(sys.argv) main = MainWindow() main.show() sys.exit(app.exec_())
原文地址:http://my.oschina.net/zjuysw/blog/302442