2

編集可能なテキスト フィールドを持つ Tix.ComboBox があります。テキストの値を保持する変数を強制的に更新するにはどうすればよいですか?

もっと具体的な説明をしましょう。コンボボックスとボタンがあります。ボタンをクリックすると、コンボ ボックスの値を含むメッセージ ボックスがポップアップ表示されます。現在、コンボ ボックスのテキスト フィールドの値が「thing1」であるとします。ボックスに「new」と入力してマウスでボタンをクリックすると、「thing1」というメッセージが表示されます。ボックスに「new」と入力し、タブ フォーカスをコンボ ボックスから離してボタンをクリックすると、ポップアップ メッセージに「new」と表示されます。

コンボ ボックスからタブを離さなくても、コンボ ボックスの値を強制的に新しい値に更新するにはどうすればよいですか?

サンプルコードを含めました。

import Tix
import tkMessageBox

class App(object):
    def __init__(self, window):
        window.winfo_toplevel().wm_title("test")
        self.window = window

        self.combo = Tix.ComboBox(window)
        self.combo.insert(Tix.END, 'thing1')
        self.combo.insert(Tix.END, 'thing2')
        self.combo.entry['state'] = "normal"
        self.combo['editable'] = True
        self.combo.pack()

        button = Tix.Button(window)
        button['text'] = "Go"
        button['command'] = self.go
        button.pack()

    def go(self):
        tkMessageBox.showinfo('info', self.combo['value'])


if __name__ == '__main__':
    root = Tix.Tk()
    App(root)
    root.mainloop()
4

2 に答える 2

5

ウー!自力で解決しました。

使用する

self.combo['selection']

それ以外の

self.combo['value']
于 2008-09-22T20:24:50.063 に答える
1

注:選択した回答として選択できる萌えの回答のコピー

ウー!自力で解決しました。

使用する

self.combo['selection']

それ以外の

self.combo['value']
于 2008-10-16T01:22:20.983 に答える