25-1 예제: ex24
import sys from PyQt5.QtWidgets import QApplication, QWidget, QTabWidget, QVBoxLayout class MyApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): tab1 = QWidget() tab2 = QWidget() tabs = QTabWidget() tabs.addTab(tab1, 'Tab1') tabs.addTab(tab2, 'Tab2') vbox = QVBoxLayout() vbox.addWidget(tabs) self.setLayout(vbox) self.setWindowTitle('QTabWidget') self.setGeometry(300, 300, 300, 200) self.show() if __name__ == '__main__': app = QApplication(sys.argv) ex = MyApp() sys.exit(app.exec_()) |
25-2 설명
tab1 = QWidget() tab2 = QWidget() |
각 탭에 위치할 두 개의 위젯을 만들었습니다.
tabs = QTabWidget() tabs.addTab(tab1, 'Tab1') tabs.addTab(tab2, 'Tab2') |
QTabWidget() 을 이용해서 탭을 만들어주고, addTab() 을 이용해서 'Tab1'과 'Tab2'를 tabs에 추가해줍니다.
vbox = QVBoxLayout() vbox.addWidget(tabs) self.setLayout(vbox) |
수직 박스 레이아웃을 하나 만들어서 탭 위젯 (tabs)을 배치합니다.
그리고 수직 박스(vbox)를 위젯의 레이아웃으로 설정합니다.
25-3 결과
'프로그래밍 > PyQt5 GUI' 카테고리의 다른 글
27. QClendarWidget (0) | 2021.07.26 |
---|---|
26. QPixmap (0) | 2021.07.26 |
24. QGroupBox (0) | 2021.07.26 |
23. QSplitter (0) | 2021.07.26 |
22. QSlider & QDial (0) | 2021.07.26 |