3

アイテムの大規模なデータベースを表示するアプリケーションを開発しています。

ユーザーが各項目をスクロールして必要なものを見つけるのではなく、そのデータベースを検索できるようにする検索バーもあります。検索が返さTrueれると (一致した場合)、必要な情報がテキストボックスに表示され、別のリストボックスに追加のオプションが表示されます (現在はスクロールされScrolledListBoxませんselection_set()) list_box.active()

わかった!list_box.yview_scroll()コマンドを使用する必要がありました。2 つの引数を取ります: 1) 移動先の整数/インデックス 2) 行ごとまたはページごと (UNITS または PAGES)

しかし、私は .see メソッドがより効率的であることを発見しました!

4

1 に答える 1

3

Tkinter には ScrolledListBox クラスがありません。使用している ScrolledListBox 実装について、より具体的に教えていただけますか?

そうは言っても、Tkinter のスクロール可能なウィジェットには通常see、渡されたインデックスが確実に表示されるように十分にスクロールするメソッドがあります。

この回答へのコメントで、あなたは pmw.ScrolledListBox を使用していると言っています。ScrolledListBox ウィジェットのドキュメントによると:

さらに、Tkinter.Listbox クラスのメソッドは、このメガウィジェットによってリストボックス コンポーネントに転送されます。

したがって、Listbox ウィジェットで呼び出すことができるそのウィジェットの任意のメソッドを呼び出すことができます。前に述べたように、Listbox クラスにはseeメソッドがあるため、次のようなことができるはずです。

the_widget.see(index)

上記の例indexでは、表示したいリストボックスの行です。

于 2012-04-14T17:26:14.777 に答える