2017-09-05 68 views
0

在一個Python 3.6.1 Tkinter的文字模組與很多行而vertial一個滾動(由於不同的行的長度)的Python 3.6.1 Tkinter的滾動行爲

from tkinter import * 

root = Tk() 

menu = Menu(root) 
root.config(menu=menu) 

filemenu = Menu(menu) 
menu.add_cascade(label="menu1", menu=filemenu) 
filemenu.add_command(label="menu2") 
text = Text(root, wrap=NONE) 
scrollbarVertical = Scrollbar(root, orient=VERTICAL) 
scrollbarHorizontal = Scrollbar(root, orient=HORIZONTAL) 
scrollbarVertical.config(command=text.yview) 
scrollbarHorizontal.config(command=text.xview) 
scrollbarVertical.grid(row=0, column=1, sticky=NSEW) 
scrollbarHorizontal.grid(row=1, column=0, sticky=NSEW) 
text.config(yscrollcommand=scrollbarVertical.set) 
text.config(xscrollcommand=scrollbarHorizontal.set) 
text.grid(row=0, column=0, sticky=NSEW) 
root.grid_rowconfigure(0, weight=1) 
root.grid_columnconfigure(0, weight=1) 

root.mainloop() 
+0

問題是什麼? – Seblor

+0

您能否發佈**最少**代碼來顯示您的問題? –

+0

問題是,該滾動條不應該移動... – Holzwurm

回答

0
添加的水平滾動條長度而變化

對此無能爲力 - 水平滾動條的基本設計取決於最長的可見的行的長度。

+0

所以要避免這種情況的唯一方法是擴大所有行與空格等長?! – Holzwurm

+0

是的,這可能是避免它的唯一方法。除非你使用固定寬度的字體,否則這將是困難的。 –

+0

由於我的工具只顯示內容,因此很容易檢查最大長度並平均擴展其他內容。但總的來說,這是tkinter的不良行爲...... – Holzwurm