"PyQt5"의 두 판 사이의 차이

오픈소스 비즈니스 컨설팅
둘러보기로 가기 검색하러 가기
잔글 (→‎Widget)
잔글 (→‎Widget)
64번째 줄: 64번째 줄:
 
  self.tableWidget.resizeColumnsToContents()
 
  self.tableWidget.resizeColumnsToContents()
 
  self.tableWidget.resizeRowsToContents()
 
  self.tableWidget.resizeRowsToContents()
 +
 +
* QVBoxLayout, QHBoxLayout
 +
        self.setCentralWidget(QtWidgets.QWidget(self))
 +
 +
        self.textEdit = QTextEdit()
 +
        self.pushButton = QPushButton('저장')
 +
 +
        layout = QVBoxLayout()
 +
        layout = QHBoxLayout()
 +
        layout.addWidget(self.textEdit)
 +
        layout.addWidget(self.pushButton)
 +
        # self.setLayout(layout)
 +
        self.centralWidget().setLayout(layout)
 +
 +
* QGridLayout
 +
        self.setCentralWidget(QtWidgets.QWidget(self))
 +
 +
        layout = QGridLayout()
 +
        layout.addWidget(QLabel("아이디"), 0, 0)
 +
        layout.addWidget(QTextEdit(), 0, 1)
 +
        layout.addWidget(QPushButton('로그인'), 0, 2)
 +
 +
        layout.addWidget(QLabel("비밀번호"), 1, 0)
 +
        layout.addWidget(QTextEdit(), 1, 1)
 +
 +
        self.centralWidget().setLayout(layout)
  
 
== 참고 문헌 ==
 
== 참고 문헌 ==
  
 
[[Category: 프로그램 언어]]
 
[[Category: 프로그램 언어]]

2018년 7월 12일 (목) 17:10 판

PyQt5를 정리 합니다.

Widget

  • QMainWinow
obj.setGeometry(x, y, width, height)
  • QStatusBar
obj.showMessage(~)
  • QPushButton
obj.move(x, y)
obj.resize(width, height)
obj.clicked.connect(~)
  • QLabel
obj.text()
obj.setText(~)
obj.clear()
  • QLineEdit
obj.textChanged.connect(~)
obj.returnPressed.connect(~)            #--- Enter key 입력시 호출
  • QGroupBox
  • QRadioButton
obj.setChecked(True)
obj.clicked.connect(~)
  • QCheckBox
obj.stateChanged.connect(~)
  • QSpinBox
obj.setMinimum(~)
obj.setSingleStep(~)
obj.setMaximum(~)
obj.valueChanged.connect(~)
  • QTableWidget
self.tableWidget = QTableWidget(self)
self.tableWidget.resize(400, 200)
self.tableWidget.setColumnCount(3)
self.tableWidget.setRowCount(2)

self.tableWidget.setEditTriggers(QAbstractItemView.NoEditTriggers)      #--- Read only
header_cols = ['이름', '성별', '나이']
self.tableWidget.setHorizontalHeaderLabels(header_cols)
self.tableWidget.setVerticalHeaderLabels(['이순신', '유관순'])

row = 0
item = QTableWidgetItem("이순신")
item.setTextAlignment(Qt.AlignCenter | Qt.AlignVCenter)
self.tableWidget.setItem(row, 0, item)
self.tableWidget.setItem(row, 1, QTableWidgetItem("남성"))
self.tableWidget.setItem(row, 2, QTableWidgetItem("28"))

row = row + 1
item = QTableWidgetItem("유관순")
item.setTextAlignment(Qt.AlignCenter | Qt.AlignVCenter)
self.tableWidget.setItem(row, 0, item)
self.tableWidget.setItem(row, 1, QTableWidgetItem("여성"))
self.tableWidget.setItem(row, 2, QTableWidgetItem("32"))

self.tableWidget.resizeColumnsToContents()
self.tableWidget.resizeRowsToContents()
  • QVBoxLayout, QHBoxLayout
       self.setCentralWidget(QtWidgets.QWidget(self))
       self.textEdit = QTextEdit()
       self.pushButton = QPushButton('저장')
       layout = QVBoxLayout()
       layout = QHBoxLayout()
       layout.addWidget(self.textEdit)
       layout.addWidget(self.pushButton)
       # self.setLayout(layout)
       self.centralWidget().setLayout(layout)
  • QGridLayout
       self.setCentralWidget(QtWidgets.QWidget(self))
       layout = QGridLayout()
       layout.addWidget(QLabel("아이디"), 0, 0)
       layout.addWidget(QTextEdit(), 0, 1)
       layout.addWidget(QPushButton('로그인'), 0, 2)
       layout.addWidget(QLabel("비밀번호"), 1, 0)
       layout.addWidget(QTextEdit(), 1, 1)
       self.centralWidget().setLayout(layout)

참고 문헌