>  기사  >  백엔드 개발  >  QWidget: QApplication은 QPaintDevice 이전에 구성되어야 합니다.

QWidget: QApplication은 QPaintDevice 이전에 구성되어야 합니다.

WBOY
WBOY앞으로
2024-02-09 11:50:141143검색

QWidget:必须在 QPaintDevice 之前构造 QApplication

질문 내용

우선 호환성 때문에 Windows 7~64bit와 pyqwt5.2.0, pyqt4.5.4, numpy1.3.0, python2.6.2 32bit를 사용하고 있습니다.

스크립트를 실행하면 다음이 나타납니다:

으아악

인터넷을 검색하여 문제를 해결할 수 있는 방법을 찾다가 qwidget继承了qobjectqpaintdevice(几乎我使用的每个对象都继承了它),而qmainwindow继承了qwidget를 발견했습니다. 또한 일부 정적 함수가 일부 클래스를 사용하려고 시도하는 것을 발견했지만 이것이 무엇을 의미하는지 잘 이해하지 못합니다.

누가 설명해주시면 정말 감사하겠습니다.

ps: 번역 오류에 대해 사과드립니다.


정답


코드 관점에서 보면 102번째 줄에서 오류가 발생합니다. 모듈을 로드할 때 qwidget (更准确地说是 qmainwindow)。这发生在创建 qapplication 앞에 를 만듭니다.

또한 이 시작 변수는 사용되지 않는 것 같아서 왜 가지고 있는지 모르겠습니다.

hellobegin 对象创建它,请将其移动到 __init__ 방법을 사용하고 싶다면.

편집자:

모듈이 로드될 때 스플래시 화면을 표시하려면 작고 가벼운 모듈에서 애플리케이션을 시작해야 합니다. 이 모듈에서는 다음을 수행합니다.

  1. q애플리케이션 만들기
  2. 스플래시 화면/메시지 상자 열기
  3. 그런 다음 다른 모듈을 로드하세요

모든 것이 원활하게 작동하도록 하기 위해 모듈을 별도의 함수로 가져오고 약간의 트릭을 사용하여 GUI가 준비되었을 때만 시작되도록 했습니다. 코드는 다음과 같습니다:

으아악

여기서 createsplashscreen는 스플래시 화면을 생성하는 함수입니다

위 내용은 QWidget: QApplication은 QPaintDevice 이전에 구성되어야 합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제