私はPyGTK2 GUI用の単体テストを書いています。さまざまな点で、gtk.Statusbar
に表示されているテキストをチェックする必要があります。クラスはpop()
関数を定義しますが、何も返しません。どのようにして非破壊的にテキストが現在表示されているのですか?現在のテキストをPyGTKステータスバーからチェックするには?
0
A
答えて
1
これはそれを行う必要があります。一番上のボタンの
from gi.repository import Gtk
class MainWindow(Gtk.Window):
def __init__(self):
super(MainWindow, self).__init__()
self.connect("destroy", lambda x: Gtk.main_quit())
bigbtn = Gtk.Button("Show elements")
bigbtn.connect("clicked", self.on_bigbtn_clicked)
self.stat = Gtk.Statusbar()
for id, lbl in enumerate(["One", "Two", "Three"]):
self.stat.push(id, lbl)
vbox = Gtk.VBox()
vbox.pack_start(bigbtn, True, True, 0)
vbox.pack_start(self.stat, False, False, 0)
self.add(vbox)
self.show_all()
def on_bigbtn_clicked(self, btn):
for el in self.stat.get_message_area():
print(el.get_text())
def run(self):
Gtk.main()
def main(args):
mainwdw = MainWindow()
mainwdw.run()
return 0
if __name__ == '__main__':
import sys
sys.exit(main(sys.argv))
クリックすると、現在のメッセージの内容を印刷します。まず、Gtk.Box
のステータスバーのmessage_area
にアクセスしてください。 get_text()
はあなたにテキストを取得し、その
これは、イントロスペクションを通じてGtk
ですが、それはあなたは、これを変更することができるはずのPython 2です - あなたはその後、タイプGtk.Label
のある箱(内の要素にアクセスすることができます。コードをpygtk
に簡単に変更してください - Gtk
からgtk
へ
+0
素晴らしい作品です。これはテストコードなので、私はイントロスペクションをまったく気にしません –
関連する問題
- 1. 別のクラスのUILabelアウトレットから現在のテキストを取得するには?
- 2. 現在のuilabelテキストをuiscrollビューランタイムから取得する方法
- 3. JavaScriptの現在のURLチェック
- 4. 複数行テキストボックス:現在の行/文字インデックスをステータスバーに表示
- 5. チェック現在の時刻は、C
- 6. pygtk(多分X11?)で現在の壁紙へのパスを決定する
- 7. 現在の金曜日の現在の日付を現在の日付から取得するには
- 8. Gitリポジトリ:アップ現在チェックに先駆け、現在チェックアウト1
- 9. 現在のカテゴリをチェックするには、液体のタグがありますか?
- 10. Magento - 現在の管理者以外のユーザーをロールリソースからチェックする方法
- 11. URLのテキスト本文をチェックする正規表現ですか?
- 12. フォーカスのDevexpress TextEdit現在のテキストを変更するには
- 13. SSRS:現在のテキストを列から表示
- 14. UIWebview現在のテキストフィールドにテキストを設定
- 15. 上部のテキスト(ステータスバー)
- 16. プログラム内から現在の日付を定期的にチェックする方法はありますか?
- 17. Tmux:ペインの現在の作業ディレクトリをステータスバーに表示するようにtmuxを設定する方法は?
- 18. ユーザーが現在スクロールしているかどうかをチェック
- 19. すべてのチェックを現在のページに限定します。
- 20. $ state.goは現在の状態から現在の状態に関連するイベントを起動しますか?
- 21. 現在フォーカスのあるウィンドウにテキストを送信する
- 22. cmakeから現在のMSbuildを実行するには?
- 23. RSpecから現在のテストファイル名を取得するには?
- 24. SSISパッケージのデバッグ中に変数の現在の値をチェックする方法は?
- 25. 現在のGameObjectのタグはどのようにチェックされていますか?
- 26. Jqueryの現在の日付と時刻をチェックする方法
- 27. pip requirements.txtからVCSから現在のディレクトリにパッケージをインストールするには?
- 28. ブートストラップから現在のリクエストにアクセスするには?
- 29. マーカーが現在の可視領域にあるかどうかをチェック
- 30. 現在のgitブランチが "x"であるかどうかをチェックするbashスクリプト
どのメッセージがStatusBarスタックに送られるかを制御するので、どのメッセージが表示されているかを把握する必要があります。 id。シグナル[テキストポップ](https://developer.gnome.org/pygtk/stable/class-gtkstatusbar.html#signal-gtkstatusbar--text-popped)と[text-pushed](ht tps://developer.gnome.org/pygtk/stable/class-gtkstatusbar.html#signal-gtkstatusbar--text-pushed)は、プッシュ/ポップ中にテキストを表示しますが、実際には追加/削除しています。 GtkStatusBarは表示されているテキストを含むラベルを公開しないので、アプローチを再考する必要があります。 –