2012-04-14 22 views
1

私はアイテムの大きなデータベースを表示するアプリケーションを開発しています。PythonでScrolledListBoxの選択項目にスクロールする方法は?

ユーザーは、各項目をスクロールして必要なものを見つけるのではなく、そのデータベースを検索できる検索バーもあります。検索でTrueが返されると、必要な情報がテキストボックスに表示され、別のリストボックスのオプションが表示されます(現在はスクロールされていません)。ScrolledListBoxselection_set()を使用していても選択したアイテムに自動スクロールしません。 list_box.active()

私はそれを得ました!私はlist_box.yview_scroll()コマンドを使用しなければならなかった!それは2つの引数を取ります: 1)行またはページ(単位またはPAGES)

しかし、私はより効率的に.see方法を見つけるのですかにより 2)ラインをどこへ行くの整数/インデックス!

+1

あなたが試したものを投稿してください(いくつかの回答を受け入れてください)。 – gary

+0

(私はあなたが答えを受け入れるために小切手をクリックしなければならなかったことを気付かなかった)私が言ったように:list_box.activate(index)とlist_boxselection_set(index)を試したが、もう1つあったが、また、索引は選択が必要な項目です。 –

答えて

0

TkinterにはScrolledListBoxクラスがありません。どのScrolledListBox実装を使用しているのかを具体的にすることはできますか?つまり、Tkinterのスクロール可能なウィジェットは、通常、渡されたインデックスが確実に表示されるように十分にスクロールします。seeメソッドを使用します。

この回答のコメントでは、pmw.ScrolledListBoxを使用しているとします。 the documentation for the ScrolledListBox widget

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

したがって、リストボックスウィジェットで呼び出せるウィジェットで任意のメソッドを呼び出すことができます。私は先に述べたように、リストボックスのクラスがseeメソッドを持っているので、あなたのような何かを行うことができる必要があります:上記の例ではindex

the_widget.see(index) 

をあなたが見たい、リストボックス内の行です。

+1

私はpythonのメガウィジェットモジュール(Pmw)を使っています。実際にはScrolledListBoxです。 Python 2.7を使用する - –

+0

助けてくれてありがとう! –

関連する問題