我制作了一個帶有兩個滾動條和兩個按鈕的畫布。但是滾動條不與畫布內的按鈕互動。我想要做的是,每當我滾動(例如,向下滾動)時,畫布中的所有按鈕都會向相反的方向移動(在這種情況下,向上移動),但目前它們根本不會移動。
ws = Tk()
ws.title('PythonGuides')
frame = Frame(
ws,
width=500,
height=400
)
frame.pack(expand=True, fill=BOTH)
canvas = Canvas(
frame,
bg='#4A7A8C',
width=500,
height=400,
scrollregion=(0, 0, 700, 700)
)
vertibar = Scrollbar(
frame,
orient=VERTICAL
)
vertibar.pack(side=RIGHT, fill=Y)
vertibar.config(command=canvas.yview)
horibar = Scrollbar(
frame,
orient=HORIZONTAL
)
horibar.pack(side=BOTTOM, fill=X)
horibar.config(command=canvas.xview)
canvas.config(width=500, height=400)
canvas.config(
xscrollcommand=horibar.set,
yscrollcommand=vertibar.set
)
example=tkinter.Button(canvas, text="1")
example.grid(row=3, column=5)
example2 = tkinter.Button(canvas, text="2")
example2.grid(row=6, column=7)
canvas.pack(expand=True, side=LEFT, fill=BOTH)
ws.mainloop()
uj5u.com熱心網友回復:
如果使用 將它們放入畫布中,則無法滾影片布專案.grid()/.pack()/.place()。
使用.create_window()來代替:
...
example = tkinter.Button(canvas, text="1")
canvas.create_window(10, 10, window=example, anchor="nw")
example2 = tkinter.Button(canvas, text="2")
canvas.create_window(50, 50, window=example2, anchor="nw")
...
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/327490.html
