본문 바로가기
Python Library/PyQt

[PyQt] 메뉴바

by goatlab 2022. 5. 20.
728x90
반응형
SMALL

메뉴바

 

GUI 어플리케이션에서 메뉴바 (menu bar)는 흔하게 사용된다.

 

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

class MyApp(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) # 생성된 (triggered) 시그널이 QApplication 위젯의 quit() 메서드에 연결되고, 어플리케이션 종료

        self.statusBar()
        
        # menuBar() 메뉴바 생성
        menubar = self.menuBar() 
        menubar.setNativeMenuBar(False)
        filemenu = menubar.addMenu('&File') # '&File'의 앰퍼샌드 (ampersand, &)는 간편하게 단축키 설정, 'F' 앞에 앰퍼샌드가 있으므로 'Alt+F'가 File 메뉴의 단축키
        filemenu.addAction(exitAction) # 'exitAction' 동작 추가

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

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MyApp()
    sys.exit(app.exec_())

728x90
반응형
LIST

'Python Library > PyQt' 카테고리의 다른 글

[PyQt] Error: Application failed to start because no Qt platform plugin could be initialized  (0) 2022.05.23
[PyQt] 툴바  (0) 2022.05.20
[PyQt] 상태바  (0) 2022.05.20
[PyQt] 툴팁  (0) 2022.05.20
[PyQt] 창 닫기 버튼  (0) 2022.05.20