11

QtGui が PyQt5 にパッケージ化されている理由はありますか?

Mark Summerfield の Rapid GUI プログラミング ブックを使用しています。明らかに、この本は Qt4 を念頭に置いて書かれていますが、Qt5 と PyQt5 を使用することをお勧めします。第 4 章の最初のサンプル コードを実行したいと思います。コードは次の import ステートメントで始まります。

import sys
import time
from PyQt5.QtCore import *
from PyQt5.QtGui import *

コンパイラは次のように応答します。

Traceback (most recent call last):
  File "wakeUp.py", line 4, in <module>
    from PyQt5.QtGui import *
ImportError: No module named 'PyQt5.QtGui'

PyQt5.QtCore インポート ステートメントはエラーを生成しないことに注意してください。

ターミナルから、

$ echo $PYTHONPATH
:/usr/lib/python3.3/site-packages

QtGui でこのインポート エラーに遭遇した人はいますか?

インタラクティブなセッションからできること

>>> import PyQt5.Qt
>>> import PyQt5.QtDBus
>>> import PyQt5.QtNetwork
>>> import PyQt5.QtXmlPatterns

しかし、私は QtWidgets、QtGui、QtWebkit、QtDesigner、およびその他のいくつかを持っていません。

また、役立つ場合は、 /usr/lib/python3.3/site-packages/PyQt5 の内容は次のとおりです。

__init__.py  QtCore.so  QtDBus.so  QtNetwork.so  Qt.so  QtXmlPatterns.so  uic

これは、インポートできるモジュールと同じです。他のモジュール (QtWidgets、QtGui など) もここにあるはずですか?

Ubuntu 13.04 と Python 3.3 を使用しています。

4

6 に答える 6

7

最初に pyqt4 と pyqt5 と pycharm IDE を試したとき、インポートで多くの問題がありました。(ただし、インポートにはIDLEから実行する問題はありませんでした)最終的に、多くの詰め込み、アンインストール、再インストール(依存関係を含む)の後、インポートは自分自身を整理しました。

pyqt Web サイトのインストーラーを使用して pyqt5 をインストールしましたか? 絶対です。Qt デザイナーは、Windows のスタート メニューの下にあります。PyQt4 のチュートリアルに従っているときに、PyQt5 の次のインポート ステートメントを使用して運が良かった...

from PyQt4 import QtCore, QtGui #in the pyqt4 tutorials
from PyQt5 import QtCore, QtGui, QtWidgets #works for pyqt5

私自身は初めてですが、pyqt4ではQtWidgetはQtGui(QtGui.QtWidget)の一部でしたが、pyqt5ではQtWidgetsとして単独でインポートされます。pyqt5 で動作する pyqt4 チュートリアルを取得するためのコードの小さな変更のみです。

私は個人的に pYqt4 に戻り、pyqtgraph を利用しました。

Qt Designerの使い方について説明している pyqt4 の投稿をご覧ください。

于 2014-01-03T13:35:43.520 に答える
4

問題は、PyQt5 構成スクリプトを実行していたときでした。渡す正しいオプションは次のようになりました。

> python3 configure.py --qmake [path to Qt5.x]/bin/qmake

bin までのパスを提供していましたが、特に qmake を指していませんでした。図に行く!

このように構成スクリプトを実行した後、すべての PyQt5 モジュールをインポートできました。

于 2013-07-06T16:37:31.083 に答える