from PyQt5.QtWidgets import ( QMainWindow, QMenu, QAction, QTabWidget) if __name__ == '__main__': import sys from PyQt5.QtWidgets import QApplication app = QApplication(sys.argv) ##################################################### mainWindow=QMainWindow() menuBar = mainWindow.menuBar() orderMenu = QMenu("訂貨管理", mainWindow) menuBar.addMenu(orderMenu) order_action = QAction("供應商訂貨", mainWindow) orderMenu.addAction(order_action) tabWidget=QTabWidget(mainWindow) #QMainWindow.setCentralWidget函數一旦被注釋,出現的界面很怪異的 mainWindow.setCentralWidget(tabWidget) mainWindow.show() ##################################################### sys.exit(app.exec_())
QAction的補充:
orderMenu= mainWindow.menuBar() action = QAction("showTxt", parent, enabled=True, checkable=True, shortcut="Ctrl+F", triggered=triggerFun) # 添加分割線 orderMenu.addSeparator() # 添加menu orderMenu.addMenu() # 添加action orderMenu.addAction()
QTabWidget的補充:
# tabWidget上出現關閉的叉號,但是點擊標簽的關閉叉號並不會關閉對應的標簽頁 # 而是會觸發 void tabCloseRequested(int index) 的Signals # 如果想要在點擊關閉的叉號后對應的標簽頁會關閉,需要執行 tabWidget.removeTab(int index) # tabWidget.tabCloseRequested.connect(tabWidget.removeTab) tabWidget.setTabsClosable(True) tabWidget.tabCloseRequested.connect(tabWidget.removeTab)