私はPyGTK GUIプロジェクトに取り組んでいます。私が知りたいのは、gtk.Entryから変数値を取得する方法はありますか?PyGTKのgtk.Entryから値を取得
text=gtk.Entry(0)
text.set_activates_default(True)
port = text.get_text()
これは機能しません。テキストボックスはデフォルトでは空で、get_text()は空の文字列を返します。
私はPyGTK GUIプロジェクトに取り組んでいます。私が知りたいのは、gtk.Entryから変数値を取得する方法はありますか?PyGTKのgtk.Entryから値を取得
text=gtk.Entry(0)
text.set_activates_default(True)
port = text.get_text()
これは機能しません。テキストボックスはデフォルトでは空で、get_text()は空の文字列を返します。
検索方法は正しいですが、作成直後に、ユーザーはまだフィールドにanytingを入力できません。
フィールドに実際に何かを入力し、その後get_text()
を呼び出すのを待つ必要があります。
テキストフィールドがデフォルトで空であるため、get_text()は空の文字列を返します。 ボタンコールバック関数またはその他の関数を追加します。したがって、その関数が呼び出されるときはいつでも、エントリから文字列を取得します。
text.gtk_text()
ここでselfを使いたいかもしれません。あなたには、いくつかの他の機能ではなく、メインスレッドでエントリにアクセスすることがありますから、空の文字列を返します)(
self.text=gtk.Entry()
self.text.set_activates_default(True)
def foo(self,widget,event): # some callback function
port = self.text.get_text()
print port
これは、テキストボックスはデフォルトでは空であるように動作しない、とGET_TEXTを使用し、何か案は?
いくつかのユーザー入力後にテキストを取得するように思われます。これを行うために、gtkは何かをする何らかの関数にユーザアクションを接続するためのシグナルを使います。あなたの場合、この関数は入力からテキストを取得します。あなたがユーザーとのやりとりを記述していないので、私は最も簡単な例を挙げます。あなたがボタンをクリックしたとき、その時点でのエントリーで入力されているものをつかむでしょう、あなたのGUIで を持っていた場合、あなたはこれを行うだろう:
:次にbutton = gtk.Button('Click Me')
button.connect('clicked', on_button_click)
を、あなたはon_button_click
関数を定義します
def on_button_click(self, widget, data=None):
port = text.get_text()
print 'Port: %s' % port
上記のサンプルコードでは、クリックするとgtk.Entryのテキストを取得します。
チェックアウトPyGTKのこの例では、私の一日保存
で信号を使用する方法の簡単な例については、このlink。 – darxsys