第三个程序,菜单和状态栏

一、状态栏
状态栏是用来显示应用的状态信息的组件。

import sys
from PyQt5.QtWidgets import QMainWindow, QApplication


class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()


    def initUI(self):               

        self.statusBar().showMessage('Ready')

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Statusbar')    
        self.show()


if __name__ == '__main__':

    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

知识点:

        self.statusBar().showMessage('Ready')

二、菜单栏

import sys
from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication
from PyQt5.QtGui import QIcon


class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()


    def initUI(self):               

        exitAction = QAction(QIcon('exit.png'), '&Exit', self)        
        exitAction.setShortcut('Ctrl+Q')
        exitAction.setStatusTip('Exit application')
        exitAction.triggered.connect(qApp.quit)

        self.statusBar()

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

        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('Menubar')    
        self.show()


if __name__ == '__main__':

    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

知识点:

def initUI(self):               

        ##创建一个Action,并为Action按键添加状态信息,并链接按键行为
        exitAction = QAction(QIcon('exit.png'), '&Exit', self)        
        exitAction.setShortcut('Ctrl+Q')
        exitAction.setStatusTip('Exit application')
        exitAction.triggered.connect(qApp.quit)

        ##建立状态栏
        self.statusBar()

        ##建立菜单
        menubar = self.menuBar()

        ##添加菜单File按钮,并为File按钮链接Action子菜单
        fileMenu = menubar.addMenu('&File')
        fileMenu.addAction(exitAction)

        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('Menubar')    
        self.show()

由此,其实是可以实现将多个程序合并到一个ui界面的功能了。

import sys
from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication
from PyQt5.QtGui import QIcon

import helloworld
import myname

print('e')

class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()


    def initUI(self):               

        helloworldAction = QAction(QIcon('web.png'), '&HelloWorld', self)        
        helloworldAction.setShortcut('Ctrl+H')
        helloworldAction.setStatusTip('Print:hello, world')
        helloworldAction.triggered.connect(helloworld.helloworld)

        mynameAction = QAction(QIcon('web.png'), '&Test', self)            
        mynameAction.setShortcut('Ctrl+M')    
        mynameAction.setStatusTip('Print:my name')
        mynameAction.triggered.connect(myname.myname)
        

        self.statusBar()

        menubar = self.menuBar()
        fileMenu = menubar.addMenu('&Test')
        fileMenu.addAction(helloworldAction)
        fileMenu.addAction(mynameAction)

        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('Menubar')    
        self.show()


if __name__ == '__main__':

    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

完美。

你可能感兴趣的:(第三个程序,菜单和状态栏)