티스토리 뷰

이 글은 Codetorial의 PyQt5, 초보자를 위한 Python GUI 프로그래밍-PyQt5 등을 학습하는 과정을 기록한 것이다. 강좌 자체는 해당 사이트를 참고하기 바란다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout, QVBoxLayout
 
 
class MyApp(QWidget):
 
    def __init__(self):
 
        super().__init__()
        self.initUI()
 
 
    def initUI(self):
 
        # 버튼 인스턴스 두 개를 생성한다.
        okbtn = QPushButton('Ok')
        cancelbtn = QPushButton('Cancel')
 
        # 수평 레이아웃 박스를 생성한다
        hbox = QHBoxLayout()
        # addStretch() 메서드는 신축성 있는 빈 공간을 제공합니다.
        # 두 버튼 양쪽과 가운데 stretch 인자가 1로 같기 때문에 이 세 빈 공간의 크기는 창의 크기가 변화해도 항상 같습니다.
        hbox.addStretch(1)
        hbox.addWidget(okbtn)
        hbox.addStretch(1)
        hbox.addWidget(cancelbtn)
        hbox.addStretch(1)
 
        # 수직 레이아웃 박스를 생성합니다.
        vbox = QVBoxLayout()
        # addStretch()메서드로 상단과 하단의 공간 인자를 각각 3, 1로 줍니다.
        vbox.addStretch(3)
        # 수직 레이아웃 박스에 수평 레이아웃 박스를 넣습니다.
        vbox.addLayout(hbox)
        vbox.addStretch(1)
 
        self.setLayout(vbox)
 
        self.setWindowTitle('Box Layout')
        self.setGeometry(300300300200)
        self.show()
 
if __name__ == '__main__':
 
    app = QApplication(sys.argv)
    ex = MyApp()
    sys.exit(app.exec_())
cs

결과

2019/11/10 - [Python/PyQt5] - PyQt5: 위젯의 배치: 절대적 배치(Absolute Positioning)

2019/11/10 - [Python/PyQt5] - PyQt5: 그리드 레이아웃(QGridLayout)


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함
02-08 16:01