0

だから、私は他のみんなが言うことをやっています:

scrollbar = Scrollbar(frame)

scrollbar.pack(side=RIGHT, fill=Y)

listbox = Listbox(frame, yscrollcommand=scrollbar.set)

listbox.pack()

scrollbar.config(command=listbox.yview)

しかし、スクロールバーはリストボックス自体ではなくフレーム全体に取り付けられているようです...私ができる唯一のことは、パックの代わりにscrollbar.place()を使用してリストボックスの隣に配置することですが、その唯一の1サイズのスクロールバーであり、リストボックスのYバーのみをカバーしていないため、醜いです...

誰もここで助けることができますか?

ありがとう!

4

2 に答える 2

2

スクロールバーをフレームに接続する必要がありますが、スクロールバーとリストボックスのみを保持する新しいフレームを簡単に作成できます。

例えば

myframe=Frame(frame)
myframe.pack(side=RIGHT, fill=Y)
scrollbar = Scrollbar(myframe) 
scrollbar.pack(side=RIGHT, fill=Y)
listbox = Listbox(myframe, yscrollcommand=scrollbar.set) 
listbox.pack()
scrollbar.config(command=listbox.yview)
于 2012-06-07T16:12:11.957 に答える
1

ウィジェットは互いに接続せず、コンテナー内のスペースのみを占有します。スクロールバーを右側に詰め込み、次にリストボックスを右側に詰めると、それらが添付されて表示されます。リストボックスを左側に配置して水平方向に埋めることもできます。または、両方の方向を埋める場合はどこにでも詰め込むことができます。

pack の代わりに grid を使用することもできます。隣接する列に配置するだけです。

したがって、ウィジェットを「アタッチ」することを考えずに、コンテナーに配置することを考えてください。

于 2012-06-07T18:26:34.610 に答える