728x90
반응형
오늘은 아이콘 툴바를 만드는 방법에 대해 알아보려고해요
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QAction, qApp
from PyQt5.QtGui import QIcon
class Example(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 종료 액션 생성
exitAct = QAction(QIcon('exit.png'), 'Exit', self)
exitAct.setShortcut('Ctrl+Q') # 단축키 설정
exitAct.triggered.connect(qApp.quit) # 액션과 메서드 연결
# 툴바 생성 및 액션 추가
self.toolbar = self.addToolBar('Exit')
self.toolbar.addAction(exitAct)
# 윈도우 설정
self.setGeometry(300, 300, 300, 200) # 윈도우 위치 및 크기 설정
self.setWindowTitle('Icon Toolbar Example') # 윈도우 제목 설정
self.show() # 윈도우 표시
if __name__ == '__main__':
app = QApplication(sys.argv) # 애플리케이션 객체 생성
ex = Example() # 메인 윈도우 객체 생성
sys.exit(app.exec_()) # 애플리케이션 실행 및 이벤트 루프 시작
코드 설명:
- QApplication, QMainWindow, QAction, qApp, QIcon 등 필요한 모듈을 임포트합니다.
- Example 클래스를 선언하고, QMainWindow 클래스를 상속받습니다.
- __init__ 메서드에서는 부모 클래스의 생성자를 호출한 후 initUI() 메서드를 호출합니다.
- initUI() 메서드에서는 다음과 같은 작업을 수행합니다:
- 종료 기능을 하는 액션 객체(exitAct)를 생성합니다.
- QAction의 생성자에는 아이콘과 텍스트를 설정합니다.
- setShortcut() 메서드를 사용하여 단축키를 설정합니다.
- triggered 시그널과 qApp.quit 메서드를 연결하여 액션을 수행했을 때 애플리케이션을 종료하도록 설정합니다.
- 툴바를 생성하고 액션을 추가합니다.
- 윈도우의 설정을 위해 setGeometry() 메서드를 사용하여 위치와 크기를 설정하고, setWindowTitle() 메서드를 사용하여 제목을 설정합니다.
- 마지막으로, 애플리케이션 객체를 생성하고 메인 윈도우 객체를 생성한 후 애플리케이션을 실행하여 이벤트 루프를 시작합니다.
현재 폴더에 exit.png와 같은 이름의 아이콘 파일을 넣은 후 실행하면 아이콘을 포함한 툴바가 생성됩니다.
728x90
반응형
'프로그래밍 > python' 카테고리의 다른 글
PyQt5 그리드 레이아웃 소개 (0) | 2024.05.09 |
---|---|
PyQt5를 사용한 레이아웃 관리하기 (0) | 2024.05.08 |
PyQt5로 메뉴바 만들기 (0) | 2024.05.03 |
PyQt5 로 상태바 만들기 (0) | 2024.05.02 |
PyQt5 모듈을 이용하여 툴팁표시하기 (0) | 2024.05.01 |