web-dev-qa-db-ja.com

カスタムダイアログウィンドウを開く(PyGTK +すばやく)

Quicklyをダウンロードして、新しいプロジェクトを作成し、シンプルなGUIをセットアップして、新しいダイアログを作成しました(quickly add dialog create(ご覧のとおり、私はそれをcreateと呼んでいます))。 。メインウィンドウに既にクリックハンドラーがありますが、そこからCreateDialogを開く方法がわかりません。

追伸私はPyGTK、Glade、Quicklyは初めてですが、プログラミング全般は初めてではありません。

2
Pijusn

最初に、ダイアログGUIオブジェクトの保持を取得する必要があります。私の記憶が正しければ、GUIにすばやくgladeを使用してから、GtkBuilderを介してそれをロードします。ビルダーからダイアログGUIオブジェクトを取得する

dia = self.builder.get_object('the_name_of_the_dialog_in_glade')

そして、あなたはそれを実行することができます

return_value = dia.run()

return_valueは、どのボタンが押されたかに対応するコード(グラッドで自分を変更できます)またはウィンドウが破棄されたかどうかを通知する別のコードです。

それが役に立てば幸い。

2
TLE

addコマンドのヘルプを確認することもできます。次のいずれかを実行できます。

  • quickly help addコマンドを呼び出す
  • quickly tutorialコマンドを呼び出し、addコマンドリファレンスを参照します

quickly help addの発売以来

例えば、 'quickly add dialog dialog-name'は以下を作成します:

  1. モジュールのGtk.DialogのサブクラスはDialogNameDialogと呼ばれますDialogNameDialog.py
  2. media/uiディレクトリにあるDialogNameDialog.uiと呼ばれるGladeファイル
  3. media/uiディレクトリにもある* dialog_name_dialog.xml *というカタログファイル

ダイアログのUIを編集するには、次のコマンドを実行します:$ quickly design

動作を編集するには、次を実行します:$ quickly edit

ダイアログを使用するには、別のpythonファイルからダイアログを呼び出す必要があります。

# 1. Import the dialog
import DialogNameDialog

# 2. Create an instance of the dialog
dialog = DialogNameDialog.DialogNameDialog()

# 3. Run the dialog and hide the dialog
result = dialog.run()
dialog.hide()
6
David Planella