pyside6-uic 찾아도 없어서 찾다가 고생고생 하다가 다른 사람도 고생하는 거 방지 하기위해 작성함
두가지 방법 있음 ui(qt designer 파일)을 이용하는 방법
나머지하나는 ui파일을 py로 변환해서 이용하는 방법이 있다.
- 순서(기본)
- python 설치(홈페이지)
- vsc(visual studio code) 설치(홈페이지)
- qt for python 설치(비주얼 스튜디오 코드 안에서)
- pyside6 설치
- pip install PySide6
- 프로젝트 만들기
- coding
import sys
from PySide6.QtWidgets import QApplication, QLabel
app = QApplication(sys.argv)
label = QLabel("Hello World!")
label.show()
app.exec()
qt designer 와 같이 사용해보기
1. https://doc.qt.io/qtforpython/tutorials/basictutorial/uifiles.html
2. main_uic.py(첫번째 방법 ui 파일 그대로 사용하기)
# File: main.py
import sys
from PySide6.QtUiTools import QUiLoader
from PySide6.QtWidgets import QApplication
from PySide6.QtCore import QFile, QIODevice
if __name__ == "__main__":
app = QApplication(sys.argv)
ui_file_name = "mainwindow.ui"
ui_file = QFile(ui_file_name)
if not ui_file.open(QIODevice.ReadOnly):
print(f"Cannot open {ui_file_name}: {ui_file.errorString()}")
sys.exit(-1)
loader = QUiLoader()
window = loader.load(ui_file)
ui_file.close()
if not window:
print(loader.errorString())
sys.exit(-1)
window.show()
sys.exit(app.exec())
3. ui 파일 만들기(vsc explorer에서 오른쪼 마우스 누르면된다.) - create 하면 qt desiner가 뜬다.(qt for python 설치 되어 있으면 메뉴가 나타남)
대략 만듬(저장)
ui 파일이 생성됨(untitle.ui)
4. 실행
두번째 방법( ui -> py로 변환)
1. compile QT UI File (ui_untitled.py 파일 생성)(앞에 ui 붙는거는 설정에 그렇게 되어 있다)
- 설정에서 자동으로 변환되게 설정이 되어 있다(기본값)(ui 파일 저장하면 py 파일이 생성됨)
자동 변환 및 py파일로 변환시 ui_로 시작하라고 설정이 되어 있다.
import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from PySide6.QtCore import QFile
from ui_untitled import Ui_MainWindow
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec())
ui_untiled는 py로 변환된 파일 이름
Ui_MainWindow는 ui_untilted안에 있는 class
잘됨
고생했던것
1. PySide6을 설치하면 designer가 설치 된다. 그것도 모르고 qt_designer를 따로 설치 해서 먼가 혼동이 생겨서 compile ui, create qt ui 이런것이 안되었다.
- qt_designer 파일 삭제후 정상적으로 잘됨
2. 패스 지정이 안되어서 안되는 경우
- cmd나 터미널 창에서 designer 입력이 되는지 확인 안될 경우에는 컴퓨터 환경설정에서 path에 designer를 추가해서 해결함
C:\Users\사용자이름\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\PySide6
3. ui 파일 py로 컴파일 했는데 안되는 경우
- 처음에 꼬여서 안되다가 설정에 compile에 위 경로에 있는 uic를 이용해서 컴파일 하니까 문제가 됨
-아래에 uic 경로를 넣었더니 문제가됨(컴파일은 되나 동작 안됨), 삭제하고 정상적으로 됨
'Study(매일매일한걸음씩) > Python' 카테고리의 다른 글
Mini -Project #1-1 3자리 숫자 야구 게임 with openai(좌절) (0) | 2023.01.31 |
---|---|
#1 아무것도 모른 상태에서 처음 하는 Python GUI(PySide6) - 버튼 만들기 (0) | 2023.01.11 |
Mini -Project #1 3자리 숫자 야구 게임 (Ver 1.0) (0) | 2023.01.06 |
PySide6(GUI 환경 python) 이란 (0) | 2022.12.09 |
Python Pyside6 교육 자료 homepage (0) | 2022.12.09 |
댓글