0
我正在嘗試類似newsfeed的操作,但要簡單得多。只有物品從頂部填充,舊物品被壓下。我參考了Adding a scrollbar to a group of widgets in Tkinter,但是這個在底部增加了一個新項目,我不能這樣做,所以最新的一個總是添加在頂部,舊的是在底部。先謝謝你。 我有這個至今:在tkinter上添加滾動項目
import Tkinter as tk
from Tkinter import *
import PIL
from PIL import Image, ImageTk
root = tk.Tk()
canvas = tk.Canvas(root, borderwidth=0, background="#ffffff")
frame = tk.Frame(canvas, background="#ffffff")
vsb = tk.Scrollbar(root, orient="vertical", command=canvas.yview)
canvas.configure(yscrollcommand=vsb.set)
vsb.pack(side="right", fill="y")
canvas.pack(side="left", fill="both", expand=True)
canvas.create_window((4,4), window=frame, anchor="nw")
row=0
def populate(frame):
global row
row += 1
#image files
imfile = "potato.jpeg"
im=Image.open(imfile)
resized=im.resize((50,50), PIL.Image.ANTIALIAS)
tkimage = ImageTk.PhotoImage(resized)
t="the item number %s \t\t" %row
tk.Label(frame, text=t, compound=tk.RIGHT).pack()
def onFrameConfigure(canvas):
'''Reset the scroll region to encompass the inner frame'''
canvas.configure(scrollregion=canvas.bbox("all"))
def update_status():
populate(frame)
root.after(1000, update_status)
root.after(1000, update_status)
frame.bind("<Configure>", lambda event, canvas=canvas: onFrameConfigure(canvas))
root.geometry("500x500")
root.mainloop()
是什麼 「FB」 代表什麼?另外,請創建一個[mcve]來說明您嘗試過的內容。密切注意Facebook的「M」和「C」 –
,或者可以是新聞提要。基本上意味着堆棧。哪些最新項目添加在頂部 –
'.pack(side =「top」)'您的項目將是明顯的解決方案 - 這是行不通的? – jasonharper