tkinter
私のtkinter
アプリケーションに「サイドウィンドウ」を作成し、リストを表示して自動的にその下にスクロールすることを計画しています。Python Tkinter動的自動スクロールでリストを表示
目的は、聴衆のために巨大な画面にウィンドウが表示され、リストの各要素が競技の参加者のスコアであることです。
それでは、私が達成したいことは、たとえば次のとおりです。
ウィンドウがポップアップし、ゆっくりと、第2から第六の参加者に示して下に移動し、そうでないよりも、最初の5の参加者とそのスコアを示し
set
スクロールバーのオプションを検索しましたが、何も見つかりませんでしたが、listbox
のyview
オプションが見つかりました。しかし、私がlistbox
を循環しようとし、そのyview
をセットしてから1秒間スリープすると、正しい要素が表示されず、実際には全期間待ってから最後の要素にジャンプします。
テストコード私はこのような外観を使用:
from tkinter import *
from time import sleep
def a():
for i in range(1000):
listbox.yview(i)
sleep(1)
master = Tk()
scrollbar = Scrollbar(master)
scrollbar.pack(side=RIGHT, fill=Y)
listbox = Listbox(master, yscrollcommand=scrollbar.set)
for i in range(1000):
listbox.insert(END, str(i))
listbox.pack(side=LEFT, fill=BOTH)
scrollbar.config(command=listbox.yview)
Button(master,text="start",command=a).pack()
mainloop()
はこのような何かを作るための良い方法はありますか?各スリープサイクル後にリスト内の実際の位置を表示するようにコードを修正する方法はありますか?