問題タブ [pygobject]
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.
python - PyGobjectでの描画(python3)
PyGObjectとpython3を使用して単純なグラフィックエディタを作成しようとしています。マウスを使用して異なる色と幅の線を描画する必要があります。私はこのような多くの例を見つけましたが、これ以上複雑なものはありません。
'draw'イベントの間に描画された画像を保存するにはどうすればよいですか?描画のインクリメンタルな方法はありますか、それとも「描画」イベントごとにペインを再描画する必要がありますか?パスを保存できることがわかりましたが、描画された線の幅と色を保存するにはどうすればよいですか?'draw'コールバックの外側で画像を作成し、コールバックの内側でのみ適用(描画)する方法はありますか?
これが私が今持っているものです。
私の英語は申し訳ありませんが、それは私の母国語ではありません。
python - PIL GdkPixbuf の変換
pixbufでPILイメージを変換するにはどうすればよいですか?. 多くの例を変更しようとしましたが、解決策はありません
エラー
私はPygobject https://live.gnome.org/PyGObjectを使用しています
python - Gtk3のToolButtonにアイコンを追加する
Gtk.ToolButton(Python用のPyGiを使用するGtk3)にアイコンを追加してGTK + 3ツールバーに追加する方法はありますか?
以下は私のコードです:
注:このget_resource()
メソッドは、リソースパスのローカル作業フォルダーを掘り下げます。このメソッドは、このコンテキストで機能していると見なされます。
PyGiを使用して上記のコードを試しました。画像ファイルは有効で、すべてが機能していますが、画像が表示されません。
python - RadioMenuItemsで構成されるメニューで複数のアイテムが(誤って)選択されている
私の小さなPyGObject/GTK3アプリケーションでは、RadioMenuItem
sで構成される(サブ)メニューを作成しようとしています。
メインウィンドウの次のようにメニューを作成します__init__
。
次に、button_press_event
を使用してハンドラーに表示します
初めてメニューを開いたとき、メニュー項目「2」だけが正しく選択されています。次に、たとえば、メニュー項目「3」を選択してメニューを再度開くと、メニュー項目2と3の両方が選択されています。私は何が間違っているのですか?
python - Gtk.StatusIcon をテキストとして設定するにはどうすればよいですか
カスタム テキストで Gtk.StatusIcon を作成したいと思います。理想的には、これを既存の画像に追加したいのですが、テキストのみでも構いません。どうすればこれを達成できますか?
Gtk.Label の pixbuf の取得に関する投稿を見たことがありますが、これらのメソッドは Gtk3 (pixbuf_get_from_drawable) から削除されているようです。
python - PyGObject の GtkSourceView を使用して Glade から GUI をロードする
PyGObject に GtkSourceView ウィジェットを持つ Glade ファイルを使用しようとしています。Glade で新しい GtkSourceView 3.0 の使用を開始する方法に関する小さなガイドを書きました: http://cjenkins.wordpress.com/2012/05/08/use-gtksourceview-widget-in-glade/
問題は、PyGObject から Glade をロードしたいときです。
そのファイルを実行すると、次のエラーが発生しました。
Glade ファイル (test.glade) は、GtkSourceView ウィジェットを含む単なるウィンドウです。
これを解決する方法は、今のところ私の知識ではありません。add_from_file() を呼び出す前に、何らかのタイプを登録する必要があると思います。どんなアイデアでも大歓迎です。
私は使用しています:
- Ubuntu プレサイス 12.04
- 空き地 3.12.0
- libgtksourceview 3.0
- Gtk+ 3.0
敬具
python - pygobject、glade、gtk3に移行する場合は、エントリコンボボックスを使用してください
私は3か月からgladeとpygtkを使ってPythonで開発していますが、それに慣れる前でさえ、それはすでに時代遅れでした。
Archlinuxを使用すると、私のシステムは常に最新の状態になっているため、gtk2に比べて機能が少し不足していることに気付いたとしても、gtk3を使用せざるを得ません。
そこで、pygobjectに切り替えることにしました。残念ながら、ドキュメントは完全ではありません。
グレイドファイルとPythonコードを新しいシステムに正常にアップグレードしましたが、1つのエラーが発生します。
私のプログラムの1つに、エントリのあるコンボボックスがあります。コンボボックスから選択されたか、ユーザーが入力したかに関係なく、get_active_text()メソッドを呼び出してエントリのコンテンツを取得するために使用します。
このメソッドはもう存在しないので(エラーが発生したためだと思います)、代わりにこれを使用します:
ご覧のとおり、古いコードにはコメントが付いています。
このコードは機能しますが、奇妙な問題があります。エントリを使用できません。
コンボボックスからテキストを選択できますが、エントリが使用できません。選択はできますが、入力できません。
これは、どこかでアクティブ化する必要がある新しい動作ですか?プログラムのgtk2バージョンでは、問題はありません。
これが私の空き地ファイルのコンボボックスエントリを説明する部分です:
テキストを含むgchararrayタイプの1つの列を持つリストストアを作成しました。セルはGtkCellRendererによってレンダリングされます(ただし、cellrendererのプロパティ "text"は定義されていません。これを0(gchararray)に定義すると、テキストが2回取得されるためです!)
エントリバッファを追加すると役立つと思いましたが、何も変わりません。
編集:私は解決策を見つけました:埋め込みエントリのcan_focusはfalseでした。これで、エントリバッファを必要とせずに機能します。
これを投稿する前に解決策を見つけましたが、他のユーザーにもこの問題が発生した場合に備えて投稿します。
python - Gtk.Treeviewはシグナルとコードを介して行の選択を解除します
私はPyGObjectを使用していますが、これはすべてのGTKに適用できる質問だと思います。したがって、誰かがCを使用してそれを行う方法を知っていれば、Pythonでも機能するはずです。
アクティブと非アクティブの2つのツリービューがあり、Sqliteデータベースからデータをロードし、アイテムを一方から他方にスワップおよびドラッグアンドドロップできます。これは単なる麻酔です。一方のツリービューで1つのアイテムをクリックすると、もう一方の前に選択したアイテムの選択を解除する必要があります。
ネット上で何も見つからなかったので、誰も同じようなことをする必要はなかったようです。
python - Python で Gtk3 GtkTreeRowReference を使用する方法
GtkTreeRowReference()
成功せずにGtk3 の関数を呼び出そうとしています。ListStore
関連する TreeView の選択セットを MULTIPLE モードに設定して、複数のレコードを削除しようとしています。TreeRowReference
選択で指定されたアイテムごとに保存し、ListStore
それらを使用してアイテムを削除したいListStore
のは、選択で以前に到達したListStoreアイテムが削除されると、これらのパスが更新されるはずだからです。私はTreeRowReferences
PyGtk 2 での使用に関する多くの参照を見つけました。PyGObject のチュートリアルはそれらの使用について言及していますが、実際の例は示していません。私はGtkTreeRowReference()
成功せずに呼び出すために多くの方法を試しました。例えば:
この致命的なエラー メッセージが生成されます:"TypeError: function takes at most 0 arguments (2 given)"
プログラムが行にヒットしたときGtk.TreeRowReference
。選択行には既に への参照が含まれているListStore
ため、選択行のみを引数として再試行しましたが、関数がまだ 0 引数を主張していて、1 引数を渡そうとしたという苦情がありました。
私も次のようなことを試しました:
"AttributeError: 'ListStore' object has no attribute 'GtkTreeRowReference'."
これらの努力により、Pythonは呼び出しを Varying に変更することについて不平を言うようTreeRowReference
になり、 Gtk_TreeRowReference
他のいくつかのバリエーションでも同じエラー メッセージが生成されました。
Gtk.TreeRowReference
PyGObject/Gtk3 での使用方法について手がかりを教えてもらえますか? 比較的新しく経験の浅い Python プログラマーであり、Gtk も初めて使用するので、息を呑むほど明白な何かを見落としていることは間違いありませんが、インターネットで何度も検索した後でも困惑しています。