Qt Designer 예제 - Qt Designer yeje

Qt Designer 예제 - Qt Designer yeje

 qtdesigner를 이용하여 간단한 윈도우창을 만들겠습니다.

designer를 실행합니다.(실행파일이 어디있는지 모르시면, 아래 포스트를 참고하세요.)

2020/11/18 - [파이썬/PyQt5] - PyQt5 - qt designer 파일 위치

PyQt5 - qt designer 파일 위치

아나콘다(Anaconda3)를 설치하고 나서 qt designer 위치를 찾느라 헤메었네요. 비전공자에다 40대 아저씨가 코딩을 시작하려고 하니 엄청 힘든점이 많네요. designer 위치는 아래 경로에 있습니다. Anaconda

dotsnlines.tistory.com

Qt Designer 예제 - Qt Designer yeje
Qt Designer 예제 - Qt Designer yeje

'Main Window'를 선택한 다음 '생성(R)' 버튼을 클릭합니다.

Qt Designer 예제 - Qt Designer yeje

왼쪽 메뉴에서 'Push Button' 과 'Line Edit'을 Drag & Drop 해서 위의 그림과 같이 만듭니다.

저장을 하시면 되는데, 저는 바탕화면에 저장했습니다.

이제 코드를 작성하시고 연결하면 됩니다.

import sys

from PyQt5.QtWidgets import *

from PyQt5 import uic

필요한 모듈을 가져옵니다.

form_class = uic.loadUiType(r'C:\Users\passi\Desktop\TestWindow.ui')[0]

저장한 ui의 경로를 설정해서 'form_class'로 저장합니다.

class MyWindow(QMainWindow, form_class):

    def __init__(self):

        super().__init__()

        self.setupUi(self)

        self.pushButton.clicked.connect(self.click_button)

MyWindow라는 클래스를 만들고, QMainWindow와 form_class를 상속 받습니다.

self.setupUi(self)로 UI를 불러옵니다. 그리고 pushButton을 연결합니다.

def click_button(self):

        exist_lineEdit =  self.lineEdit.text()

        self.lineEdit.setText(exist_lineEdit + self.pushButton.text())

버튼을 누르면 라인에딧에 버튼에 적혀 있는 글자가 연속적으로 나타나게 하는 함수입니다.

if __name__=='__main__':

    app = QApplication(sys.argv)

    window = MyWindow()

    window.show()

    app.exec_()

메인으로 만듭니다.

전체 코드는 아래와 같습니다. 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

import sys

from PyQt5.QtWidgets import *

from PyQt5 import uic

form_class = uic.loadUiType(r'C:\Users\passi\Desktop\TestWindow.ui')[0]

class MyWindow(QMainWindow, form_class):

def __init__(self):

super().__init__()

self.setupUi(self)

self.pushButton.clicked.connect(self.click_button)

def click_button(self):

exist_lineEdit =  self.lineEdit.text()

self.lineEdit.setText(exist_lineEdit + self.pushButton.text())

if __name__=='__main__':

app = QApplication(sys.argv)

window = MyWindow()

window.show()

app.exec_()

cs

아래는 실행화면입니다.

Qt Designer 예제 - Qt Designer yeje