툴바 만들기

../_images/2_7_toolbar_sample.png

메뉴가 어플리케이션에서 사용되는 모든 명령의 모음이라면, 툴바 (toolbar)는 자주 사용하는 명령들을 더 편리하게 사용할 수 있도록 해줍니다. (QToolBar 공식 문서 참고)

폴더 안에 툴바의 각 기능에 해당하는 아이콘들을 저장해 둡니다.


../_images/save.png

save.png

../_images/edit.png

edit.png

../_images/print.png

print.png

../_images/exit.png

exit.png


예제

## Ex 3-7. 툴바 만들기.

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)

        self.statusBar()

        self.toolbar = self.addToolBar('Exit')
        self.toolbar.addAction(exitAction)

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


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

간단한 툴바를 하나 만들었습니다.

툴바에는 선택되었을 때 어플리케이션을 종료하는 ‘exitAction’이 하나 포함되어 있습니다.



설명

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

메뉴바의 경우와 마찬가지로 QAction 객체를 하나 생성합니다.

이 객체는 아이콘 (exit.png), 라벨 (‘Exit’)을 포함하고, 단축키 (Ctrl+Q)를 통해 실행 가능합니다.

상태바에 메세지 (‘Exit application’)를 보여주고, 클릭시 생성되는 시그널은 quit() 메서드에 연결되어 있습니다.



self.toolbar = self.addToolBar('Exit')
self.toolbar.addAction(exitAction)

addToolbar()를 이용해서 툴바를 만들고, addAction()을 이용해서 툴바에 exitAction 동작을 추가했습니다.



결과

../_images/2_7_toolbar.png ../_images/2_7_toolbar_mac.png

그림 3-7. 툴바 만들기.


이전글/다음글