IT/PyQt5

[PyQt5] 위젯, 콤보박스, 리스트, 선택

useful-jang 2020. 2. 12. 16:24

 

콤보박스는 많은 선택지 중에서 하나를 선택할 수 있는 기능입니다. 선택지가 펼쳐지며 사용자가 원하는 것을 고를 수 있습니다.

 

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QComboBox

class comboBoxApp(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.lb1 = QLabel('선택하세요.', self)
        self.lb1.move(10,20)

        combo_box = QComboBox(self)
        combo_box.addItem('떡볶이')
        combo_box.addItem('순대')
        combo_box.addItem('오뎅')
        combo_box.addItem('뛰김')
        combo_box.addItem('김밥')
        combo_box.move(100,15)
        combo_box.activated[str].connect(self.onActived)

        self.setWindowTitle('콤보박스')
        self.setGeometry(500,500,200,100)
        self.show()

    def onActived(self, text):
        self.lb1.setText(text)
        self.lb1.adjustSize()

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

 

먹고싶은 분식을 골라보는 기능입니다. 콤보박스 객체를 만들어 주고 addItem으로 원하는 옵션을 추가해주면 됩니다. 

onActived 함수를 사용해 선택할 때마다 선택한 텍스트를 str로 불러와서 표시합니다.