Python3 및 PySide2로 GUI 만들기

10226 단어 Qtpyside2Python3
PySide2에서의 GUI 개발 환경을 정돈했기 때문에 각서에.
- OS : 우분투 17.10

1. Python3 개발 환경 구축



PySide2의 입수가 가장 간단하기 때문에 이번에는 Anaconda or Miniconda로 구축해 갑니다.
자신은 불필요한 패키지라든지 필요 없기 때문에 Miniconda로 갑니다.
  • Anaconda htps //w w. 아나 콘다. 코 m / 드 w 응 아 d / # ぃ ん x
  • Miniconda htps : // 이런. 이오/미니곤다. HTML

  • Anaconda와 Miniconda에 대한 자세한 내용은 다른 게시물을 참조하십시오.
    설치가 끝나면 작업 환경을 만들어 둡니다.

    2. PySide2 설치


  • htps : // 우우키. qt. 이오 / 파이로 2_Getchin gS rd

  • Git 리포지토리를 Clone하고 빌드 실행 ... 라든지하고 싶었습니다만 몇 번 해도 잘되지 않습니다! ! !
    왜...
    그래서 이번에는 conda를 통해 패키지를 가져옵니다.
  • h tps://아나곤다. 오 rg / 혼다 푹신 / py 2
  • $conda install -c conda-forge pyside2
    

    3. 소스 코드


  • htps //w w1. qt. 이오/드w응아 d-오펜-그래서/? hsC T T-c Kin g = f977210 에-67-475f-32b-65 세 c207fd03 % 7Cd62710 cd-1 db-46 아-8d4d22f1c1f

  • Qt를 DL하여 설치.
    그런 다음 QtCreator에서 .ui 파일을 편집하여 GUI 부분을 만들고 저장합니다.
    .ui 파일을 .py로 변환합니다.
    pyside2-uic -o 出力したい.pyファイル 作成した.uiファイル
    
    

    우선 초기 상태의 윈도우를 .py로 출력했습니다.

    mainwindow.py
    # -*- coding: utf-8 -*-
    
    # Form implementation generated from reading ui file 'Desktop/mainwindow.ui'
    #
    # Created: Thu Dec  7 20:53:34 2017
    #      by: pyside2-uic 2.0.0 running on PySide2 2.0.0~alpha0
    #
    # WARNING! All changes made in this file will be lost!
    
    from PySide2 import QtCore, QtGui, QtWidgets
    
    class Ui_MainWindow(object):
        def setupUi(self, MainWindow):
            MainWindow.setObjectName("MainWindow")
            MainWindow.resize(400, 300)
            self.menuBar = QtWidgets.QMenuBar(MainWindow)
            self.menuBar.setObjectName("menuBar")
            MainWindow.setMenuBar(self.menuBar)
            self.mainToolBar = QtWidgets.QToolBar(MainWindow)
            self.mainToolBar.setObjectName("mainToolBar")
            MainWindow.addToolBar(self.mainToolBar)
            self.centralWidget = QtWidgets.QWidget(MainWindow)
            self.centralWidget.setObjectName("centralWidget")
            MainWindow.setCentralWidget(self.centralWidget)
            self.statusBar = QtWidgets.QStatusBar(MainWindow)
            self.statusBar.setObjectName("statusBar")
            MainWindow.setStatusBar(self.statusBar)
    
            self.retranslateUi(MainWindow)
            QtCore.QMetaObject.connectSlotsByName(MainWindow)
    
        def retranslateUi(self, MainWindow):
            MainWindow.setWindowTitle(QtWidgets.QApplication.translate("MainWindow", "MainWindow", None, -1))
    
    
    

    그런 다음 이 GUI의 .py 파일을 읽고 출력하는 main.py를 씁니다.

    main.py
    
    # -*- coding: utf-8 -*-
    import sys
    from mainwindow import Ui_MainWindow
    from PySide2.QtWidgets import *
    
    class MainWindow(QMainWindow):
        #Ui_MainWindow生成のための初期化処理
        def __init__(self, parent = None):
    
            #UI初期化処理
            super(MainWindow, self).__init__()
            self.ui = Ui_MainWindow()
            self.ui.setupUi(self)
    
    #実行処理
    if __name__=="__main__":
        #アプリケーション作成
        app = QApplication(sys.argv)
        #オブジェクト作成
        window = MainWindow()
        #MainWindowの表示
        window.show()
        sys.exit(app.exec_())
    
    

    4. 실행



    두 파일을 같은 폴더에 넣고 실행
    $python main.py
    

    안전하게 창이 표시되면 성공입니다.


    우선 PySide2에서 GUI 개발을 하기 위한 스타트 지점이군요.
    여기에서 여러가지 기능을 추가해 나가면 좋겠습니다.

    좋은 웹페이지 즐겨찾기