相关文章推荐

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85 . 38 %
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1 回答

5268 閲覧

PyQt5:QPainterが起動しない

Ykkykk

総合スコア 140

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0 グッド

0 クリップ

投稿 2018/11/14 01:41

編集 2018/11/14 01:45

QPainter()インスタンスが起動しません。

Pyrhon3

1def paint(self, point): 2 painter = QPainter() 3 painter.begin(self) 4 painter.setPen(Qt.black) 5 painter.setBrush(QBrush(Qt.black), Qt.SolodPattern)) 6 painter.drawEllipse(QPointF(point[0], point[1]), 5, 5)

以上のようなコードを実行したところ、以下のようなエラーが出ました。

QWidget::paintEngine: Should no longer be called QPainter::begin: Paint device returned engine == 0, type: 1 QPainter::setPen: Painter not active

調べてみたところ、painter.begin()の引数として、QWidgetを渡すというような記述があり変更したところ、上記と同じエラーが出ました。
また、QPaintEventを使用する旨も見つけてはいるのですが、QPaintEventを使用した場合、上で書いたコードのように引数に点の座標を渡すことはできるのでしょうか?

上記のコードは、QPushButtonがクリックされた際に呼び出される点の値を計算する関数の中で呼び出されるものです。
QPaintEventを使用してもeventとして認識されませんでした。

ご教示いただけますと幸いです。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tiitoi

2018/11/14 04:35

QPainter を使って「何に」描画しようとしているのでしょうか?
Ykkykk

2018/11/14 04:39

QGraphicsSceneです。
guest
 
推荐文章