QWidget: QApplication は QPaintDevice の前に構築する必要があります

WBOY
リリース: 2024-02-09 11:50:14
転載
1140 人が閲覧しました

QWidget:必须在 QPaintDevice 之前构造 QApplication

質問内容

まず、互換性の理由から、Windows 7-64ビットとpyqwt5.2.0、pyqt4.5.4、numpy1.3.0を使用しています。 、python2.6.2 32ビット。

スクリプトを実行すると、次のように表示されます:

リーリー

Web サーフィンをして、これを修正する方法を探していると、qwidgetqobjectqpaintdevice から継承していることがわかりました (私が使用しているほぼすべてのオブジェクトは、から継承しています)それ)、qmainwindowqwidget を継承します。また、いくつかの静的関数がいくつかのクラスを使用しようとしていることがわかりましたが、それが何を意味するのかよくわかりません。

誰かがそれを説明できれば、とても感謝します。

ps: 翻訳に誤りがあったことをお詫び申し上げます。


正解


コードの観点から見ると、エラーは 102 行目によって発生します。モジュールをロードするときは、qwidget (より正確には qmainwindow) を作成します。これは、qapplication が作成される前に発生します。

また、使用されていないように見えるため、なぜこの開始変数があるのか​​わかりません。

hellobegin オブジェクトを使用して作成する場合は、それを __init__ メソッドに移動します。 ######編集:######

モジュールのロード時にスプラッシュ画面を表示したい場合は、小さくて軽量なモジュールからアプリケーションを起動する必要があります。このモジュールでは次のことを行います:

qアプリケーションの作成

スプラッシュ画面/メッセージボックスを開く

    次に他のモジュールをロードします
  1. すべてをスムーズに動作させるために、モジュールを別の関数にインポートし、GUI の準備ができたときにのみモジュールが開始されるようにするためのちょっとしたトリックを使用します。コードは次のとおりです:
  2. リーリー
  3. ここで、
  4. createssplashscreen
は起動画面を作成する関数です

以上がQWidget: QApplication は QPaintDevice の前に構築する必要がありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!