PyQt5에서 간단한 응용 프로그램을 완성했습니다. QT 디자이너에서 UI를 디자인하고 pyuic5
으로 py 코드로 변환하여 파이썬 인터프리터를 통해 실행했습니다.PyQt5 : 디자이너와 함께 여러보기를 만들고 하나의 응용 프로그램에 연결하십시오.
이제 PyQt5에 익숙하지 않지만 또 다른 UI보기를 추가하고 자습서의 대부분은 하나의보기 만 언급합니다. 예를 들어 Visual Studio를 사용하고 있다면 새 양식을 만들고 show and hide 메서드를 사용하여 표시 할 수 있습니다. 예를 들어 단추를 누르면 표시되지만 PyQt5에서도 동일한 방법을 모르겠습니다.
pyuic5
에서 변환 된 코드는 인스턴스를 생성하고 앱을 실행하는 if __name__ == "__main__"
기능을 포함하므로 UI 데이터 만 가져 오는 것만으로도 충분합니다. 그리고 어떻게하면 뷰를 생성 할 수 있습니까? 필요에 따라 뷰를 표시하고 숨길 수 있습니까? 감사합니다
편집 ============= 로드가 다른 방법을 발견 한 이래로 조금 더졌습니다 UI
파일. PyQt에는 Python 코드로 변환하는 대신 UI 파일을 직접로드 할 수있는 메서드가 있다고 가정합니다. 이는 내가 사용하고있는 윈도우 유형의 서브 클래스 인 클래스를 만들 수 있다는 것을 의미하며 (예 : QApplication
, QMainWindow
, QWidget
등등), Visual Studio에서 폼 인 것처럼 해당 객체에 액세스 할 수 있습니다.
from PyQt5.QtWidgets import QApplication, QWidget, QMainWindow
from PyQt5.uic import loadUI
class UIObject(QMainWindow):
def __init__(self):
super(UIObject, self).__init__()
loadUI('mainapp.ui`, self)
self.mybutton1.clicked.connect(self.printhello)
def printhello():
print("hello")
app = QApplication(sys.argv)
mainview = UIObject()
mainview.show()
sys.exit(app.exec_())
이렇게하면 UI 파일이로드되어 화면에 표시됩니다. 여러개의 ui
파일을로드하고 보여 주거나 비주얼 스튜디오에서 숨기기 위해 동일한 구조를 사용할 수 있다고 가정합니다. 똑바로 보이지만 QT 또는 PyQT에 대해 많이 알지 못해서, 왜이 방법으로 ui
파일을 다루는 것이 더 일반적으로 자습서에 광고되지는 않습니까? 우연히도 문서를 읽는 동안 그것을 발견했습니다.