我正試圖在一個畫布物件中添加一個滾動條,我將在其中匯入我的表格。我在 Stack Overflow 上發現了以下內容。tkinter: 在畫布上使用滾動條
但問題是,我不知道要匯入哪些子模塊,而不使用*來匯入所有模塊。我還希望滾動條位于 Canvas 內,而不是整個視窗本身。
這是我的基本代碼,展示了側邊欄的樣子:
import tkinter as tk
##標簽設定:
root=tk.Tk()
root.title("虛擬桌面")
root.resizable(False, False)
#Tab Resolution1080, height=720, bg="LightBlue" /span>)
canvas.pack()
#Generic Canvas Where An Table Will Be Imported Into580, height=250, bg="Blue")
canvas.create_window(540, 360, window=tablePanel)
###Desired Horizontal Sidebar Location (Actual Scrollbar Haven't Added)/span>希望的水平側邊欄位置(未添加實際滾動條)。
#白色的邊欄背景。
backBar = sideBar = tk.Canvas(root, width=25, height=248, bg="LightGrey")
canvas.create_window(816, 360, window=sideBar)
#Sidebar[/span].
sideBar = tk.Canvas(root, width=18, height=150, bg="灰色" )
canvas.create_window(816, 316, window=sideBar)
root.mainloop()
編輯:
sideBar=tk.Scrollbar(root, orient='vertical', command = tablePanel.yview()
sideBar["command"] =tablePanel.yview
canvas.create_window(816, 360, window=sideBar)
contents = tk.Canvas(root, width=100, height=100, bg="Green" )
tablePanel.create_window(300, 200, window=contents)
contents2 = tk.Canvas(root, width=100, height=100, bg="Green")
tablePanel.create_window(300, 90, window=contents2)
root.mainloop()
預先感謝。
uj5u.com熱心網友回復:
你不需要匯入任何東西。做到以下幾點:
sideBar=tk.Scrollbar(root, orient='vertical',command = tablePanel.yview()
sideBar["command"] =tablePanel.yview
canvas.create_window(816, 360, window=sideBar)
你必須洗掉這些行 :
backBar = sideBar = tk.Canvas(root, width=25, height=248, bg="LightGrey")
canvas.create_window(816, 360, window=sideBar)
#Sidebar[/span].
sideBar = tk.Canvas(root, width=18, height=150, bg="灰色" )
canvas.create_window(816, 316, window=sideBar)
你還需要在tablepanel上做一些改變,比如:
tablePanel = tk. Canvas(root, width=580, height=250, bg="Blue"/span>, scrollregion=(0,0,0, 1200)
更多資訊請參見滾動條的檔案
。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/330596.html
標籤:
