問題タブ [pyqt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1554 参照

python - Python タスクバー アプレット

Linux と Windows の両方で使用されるパネルをコーディングしたいと考えています。理想的には、PyQT を使用して Python で記述されます。

これまでに見つけたのは QSystemTrayIcon ウィジェットです。これは非常に便利ですが、探しているものとはまったく異なります。このウィジェットを使用すると、システム トレイのアイコンを左右にクリックしてメニューを追加し、特定の状況でダイアログを開くことができます。

Gnome でタスクバーに追加できるツール (パネルと呼ばれます) のようなものを作成できるものを探しています。天気予報やプロセッサの使用状況などをタスクバーに表示します。また、システムトレイ領域にもありません。

私は何かがステータスを反映するというよりもツールを書いています。

GTK とその同類を使用して両方の OS でこれをネイティブに記述できることはわかっていますが、とにかく PyQT または WxWidget で記述して、依存関係の問題に対処する必要はありませんか?

0 投票する
5 に答える
39335 参照

python - 信号に接続するときにスロットにパラメータを送信するPyQt

クリックすると、トリガーイベントを取得するスロットに接続されるタスクバーメニューがあります。問題は、どのメニュー項目がクリックされたかを知りたいのですが、その情報を接続されている機能に送信する方法がわかりません。アクションを関数に接続するために使用されるのは次のとおりです。

一部のイベントが値を返すことは知っていますが、triggered() は値を返しません。では、どうすればこれを実現できますか?独自の信号を作成する必要がありますか?

0 投票する
5 に答える
53132 参照

qt - カスタム アイテムとカスタム アイテム ウィジェットを含む QListView/QListWidget

PyQt アプリケーションを作成していますが、カスタム リスト ビューの作成に問題があります。リストに任意のウィジェット (特に 1 つのカスタム ウィジェット) を含めたいと思います。これについてどうすればいいですか?

別の方法は、スクロールバーにラップされたテーブルまたはグリッド ビューを作成することです。ただし、組み込みハンドルのネスト (ツリー ビュー) サポートと同様に、モデル/ビュー アプローチを利用できるようにしたいと考えています。

明確にするために、カスタム ウィジェットはインタラクティブ (ボタンを含む) であるため、ソリューションにはウィジェットをペイントする以上のことが必要です。

0 投票する
3 に答える
6003 参照

python - PyQt-QLabelの継承

QLabelを継承して、クリックイベント処理を追加したいと思います。私はこのコードを試しています:

しかし、クリックした後、「ラベルがクリックされました!」という行がありません。

編集:

さて、今は「clickEvent」ではなく「mousePressEvent」を使用しています。そして、私はまだ質問があります。クリックされたラベルを正確に知るにはどうすればよいですか?たとえば、2つの編集ボックスと2つのラベルがあります。ラベルの内容はピックスマップです。ラベルにテキストがないので、ラベルの違いがわかりません。どうやってやるの?

EDIT2: 私はこのコードを作りました:

別のクラス:

同じクラスのスロット:

しかし、自分自身には送信者オブジェクトはありません。私が間違ったことは何ですか?

0 投票する
8 に答える
11615 参照

user-interface - Windows での GUI の選択 (wxPy と pyQt)

サービスを監視および構成するためのアプリケーションを開発する予定です(リモートサーバーで実行されています)。長い議論の末、私たちは Python を愛し、知っているので、アプリのプラットフォームとして Python を使用することにしました。しかし、どの GUI ツールキットが私たちの目的に適しているかはわかりません。ユーザーが管理者、メンテナー、アカウントマネージャーになる高速な(開発および実行用の)アプリが必要です。

私たちが知っている Python 用の GUI ツールキットは 2 つあります: wxPythonpyQTです。長所と短所について議論している人はいますか?そして、誰かがこれらの製品 (ツールキットの Python バージョンのみ) を使用して商用アプリケーションを知っているのでしょうか? リンクが望ましいです。

ありがとう。

0 投票する
2 に答える
981 参照

qt - フォノンと画像のサポート

PyQt で Phonon を使用して、単純なスライドショーのような効果を構築しようとしています。「スライドショー」は画像やビデオで構成されますが、画像は一定の期間表示される必要があります。で画像をキューに入れると、MediaSource一瞬だけ表示されます。

Phonon はバックエンド経由で画像をサポートしているようですが (少なくとも OS X と Quicktime では)、これを示すドキュメントは見つかりませんでした。このPhonon.BackendCapabilities.availableMimeTypes()関数は、オーディオとビデオの形式のみを返します。私がテストに成功した形式 (JPEG、PNG) はどれもリストされていません。

特定の画像が画像であるかどうかを判断する必要があるため、特定の期間一時停止するMediaSourceように指示できます。MediaOjbectもちろん、既知の画像形式拡張子の大きなリストを作成して、メディアのファイル名を確認することはできますが、これは面倒です。Phononでこれを行うにはどうすればよいですか?

0 投票する
4 に答える
2253 参照

python - 巨大なファイルをロードするときの python の XML パーサーの進行状況を表示する

Python のビルトイン XML パーサーを使用して 1.5 ギガの XML ファイルをロードすると、1 日かかります。

進行状況バーを表示できるように、その内部に入り、進行状況を測定する方法を知る必要があります。何か案は?

minidom には parseString() という別のメソッドがあり、渡す文字列が有効な XML であると仮定して DOM ツリーを返します。ファイルを自分でチャンクに分割し、一度に parseString に 1 つずつ渡すとしたら、すべての最後に DOM ツリーを元に戻す?

0 投票する
2 に答える
685 参照

python - QScrollAreaからwheelEventsを盗む

カスタムウィジェットをQScrollAreaに配置したいのですが、カスタムウィジェットで、wheelEvent(e)を再実装しましたが、呼び出されません。

スクロール領域にマウスホイールのスクロール機能がなくても問題ありません。ハンドラーを呼び出すには、これらのwheelEventsが必要です。メインウィンドウのレベルでイベントを処理しようとしましたが、スクロールウィジェットが極端な状態にあり、それ以上移動できなかった場合にのみイベントを取得しました。すべてのイベントが必要です。

これが私のコードの簡略版です:

この状況でどのイベントハンドラーがイベントを取得するかがどのように決定されるかを誰かが私に説明できますか?

0 投票する
1 に答える
3076 参照

python - pyqt4 アプリですべての例外をログに記録する

標準のpythonロギングAPIを使用して、pyqt4アプリケーションですべての例外をログに記録する最良の方法は何ですか?

ブロックを除いて、try で exec_() をラップし、そこからの例外をログに記録しようとしましたが、アプリの初期化からの例外のみをログに記録します。

一時的な解決策として、ブロックを除く最も重要なメソッドを try でラップしましたが、それが唯一の方法ではありません。

0 投票する
1 に答える
1119 参照

python - PyQt の setPixmap() が Pixmap で呼び出されると、「Python.exe」がクラッシュする

ソケットを使用して画像を相互に送受信するプログラムがあります。サーバーは「image.tostring()」を使用して画像データを送信し、クライアント側はそれを受信して​​「Image.fromstring」を使用して画像に戻し、「ImageQt.ImageQt(image)」を使用して QImage に変換します。 「QPixmap.fromimage(qimage)」を使用してQPixmapに変換し、「lable.setPixmap(qpixmap)」を使用してQWidgetのQLableの画像を更新します

小さな画像ではすべて正常に動作しますが、200x200 を超える画像では python.exe がクラッシュし、コンソールには「プロセスが終了コード -1073741819 で終了しました」と表示されるだけで、何が問題なのかわかりません。

問題を 'setPixmap()' に切り分けました (それをコメントアウトする限り、他のすべてが機能します) が、問題が何であるかわかりません。

これはクライアント側でのみ発生します。サーバー側では、Image から QImage、QPixmap、次に setPixmap へと同じ手順を使用しますが、問題はありません。

また、それをQBitmapにして、ビットマップでsetPixmapを使用しようとしましたが、うまくいきました(ただし、白黒なので使用できません)。変!

どんな助けでも大歓迎です!