<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # PyQt4 中的菜單和工具欄 > 原文: [http://zetcode.com/gui/pyqt4/menusandtoolbars/](http://zetcode.com/gui/pyqt4/menusandtoolbars/) 在 PyQt4 教程的這一部分中,我們將創建菜單和工具欄。 菜單是位于菜單欄中的一組命令。 工具欄上的按鈕帶有應用中的一些常用命令。 ## 主窗口 `QtGui.QMainWindow`類提供一個主應用窗口。 這樣可以創建帶有狀態欄,工具欄和菜單欄的經典應用框架。 ## 狀態欄 狀態欄是用于顯示狀態信息的小部件。 ```py #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial This program creates a statusbar. author: Jan Bodnar website: zetcode.com last edited: September 2011 """ import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): self.statusBar().showMessage('Ready') self.setGeometry(300, 300, 250, 150) self.setWindowTitle('Statusbar') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main() ``` 狀態欄是在`QtGui.QMainWindow`小部件的幫助下創建的。 ```py self.statusBar().showMessage('Ready') ``` 要獲取狀態欄,我們調用`QtGui.QMainWindow`類的`statusBar()`方法。 該方法的第一次調用將創建一個狀態欄。 后續調用返回狀態欄對象。 `showMessage()`在狀態欄上顯示一條消息。 ## 菜單欄 菜單欄是 GUI 應用的常見部分。 它是位于各個菜單中的一組命令。 (Mac OS 對菜單欄的處理不同。要獲得相似的結果,我們可以添加以下行:`menubar.setNativeMenuBar(False)`。) ```py #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial This program creates a menubar. The menubar has one menu with an exit action. author: Jan Bodnar website: zetcode.com last edited: August 2011 """ import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): exitAction = QtGui.QAction(QtGui.QIcon('exit.png'), '&Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.setStatusTip('Exit application') exitAction.triggered.connect(QtGui.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() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main() ``` 在上面的示例中,我們創建一個帶有一個菜單的菜單欄。 此菜單包含一個操作,如果選擇該操作,則該應用將終止。 也會創建一個狀態欄。 可通過 `Ctrl + Q` 快捷方式訪問該操作。 ```py exitAction = QtGui.QAction(QtGui.QIcon('exit.png'), '&Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.setStatusTip('Exit application') ``` `QtGui.QAction`是使用菜單欄,工具欄或自定義鍵盤快捷鍵執行的操作的抽象。 在以上三行中,我們創建一個帶有特定圖標和“退出”標簽的動作。 此外,為此操作定義了快捷方式。 第三行創建一個狀態提示,當我們將鼠標指針懸停在菜單項上時,狀態提示將顯示在狀態欄中。 ```py exitAction.triggered.connect(QtGui.qApp.quit) ``` 當我們選擇此特定動作時,將觸發信號。 信號連接到`QtGui.QApplication`小部件的`quit()`方法。 這將終止應用。 ```py menubar = self.menuBar() fileMenu = menubar.addMenu('&File') fileMenu.addAction(exitAction) ``` `menuBar()`方法創建一個菜單欄。 我們創建一個文件菜單并將退出動作附加到該菜單。 ## 工具欄 菜單將我們可以在應用中使用的所有命令分組。 使用工具欄可以快速訪問最常用的命令。 ```py #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial This program creates a toolbar. The toolbar has one action, which terminates the application if triggered. author: Jan Bodnar website: zetcode.com last edited: September 2011 """ import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): exitAction = QtGui.QAction(QtGui.QIcon('exit24.png'), 'Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.triggered.connect(QtGui.qApp.quit) self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) self.setGeometry(300, 300, 300, 200) self.setWindowTitle('Toolbar') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main() ``` 在上面的示例中,我們創建了一個簡單的工具欄。 工具欄有一個工具動作。 退出動作,在觸發時終止應用。 ```py exitAction = QtGui.QAction(QtGui.QIcon('exit24.png'), 'Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.triggered.connect(QtGui.qApp.quit) ``` 與上面的菜單欄示例類似,我們創建一個動作對象。 該對象具有標簽,圖標和快捷方式。 `QtGui.QMainWindow`的`quit()`方法連接到觸發信號。 ```py self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) ``` 在這里,我們創建了一個工具欄,并在其中插入了動作對象。 ![Toolbar](https://img.kancloud.cn/90/26/9026d8541fade0ca77d228539a5cec54_308x228.jpg) 圖:工具欄 ## 把它放在一起 在本節的最后一個示例中,我們創建一個菜單欄,一個工具欄和一個狀態欄。 我們還創建了一個中央小部件。 ```py #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial This program creates a skeleton of a classic GUI application with a menubar, toolbar, statusbar and a central widget. author: Jan Bodnar website: zetcode.com last edited: September 2011 """ 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('exit24.png'), 'Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.setStatusTip('Exit application') exitAction.triggered.connect(self.close) self.statusBar() 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() ``` 此代碼示例使用菜單欄,工具欄和狀態欄創建經典 GUI 應用的框架。 ```py textEdit = QtGui.QTextEdit() self.setCentralWidget(textEdit) ``` 在這里,我們創建一個文本編輯小部件。 我們將其設置為`QtGui.QMainWindow`的中央小部件。 中央窗口小部件占據了所有剩余空間。 ![MainWindow](https://img.kancloud.cn/2b/f3/2bf3abee3e441f3f8e18fc246ef6773c_358x278.jpg) 圖:`MainWindow` 在 PyQt4 教程的這一部分中,我們使用了菜單,工具欄,狀態欄和主應用窗口。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看