0

Entry-Widget からメソッドを呼び出すオプションまたはイベントをバインドする方法を探しています。

commandボタンウィジェットのオプションのように:command { method }または

コンボボックスウィジェットのイベントをバインドするように: $combobox.bind("<ComboboxSelected>") { method }

今、私は Entry-Widgets に似たものを探しています。エントリ (値) が編集されるたびにメソッドを呼び出したい。それが私の最初の状況です:

$foo = TkVariable.new
$entry = Tk::Tile::Entry.new(parent) {
  validate 'key'; validatecommand method; textvariable $foo
  }

validatecommand初回のみ動作します。

4

1 に答える 1

2

検証コールバック中にウィジェットのコンテンツを変更し、今後も検証コールバックを適用したい場合は、検証コールバックを再適用する必要があります。これは文書化されています (これのコア Tk バージョンについては、ドキュメントの検証セクションの最後をentry参照してください)。

Tk::after.idleを使用して、検証コールバック内で検証コールバックを再適用するコードをスケジュールします。

于 2013-05-22T09:40:57.353 に答える