0
我有一個OptionMenu可以選擇什麼可以是很長的字符串。我不希望窗口隨時調整大小,所以我將OptionMenu寬度固定爲可以完全包含大部分選項的內容。tkinter:控制OptionMenu如何顯示長選擇
我遇到的問題是,當一個非常長的選項被選中,它是居中在按鈕,並且槓桿欄的東西(不管是什麼)被繪製在最後幾個字母之上(這看起來很亂)。我寧願讓它左對齊,因爲理解不適合的字符串的最佳機會是從頭開始閱讀它,而不是隨機在中間的某處。
有什麼方法可以重寫這是如何繪製的? OptionMenu沒有任何選項。理想情況下,我想截斷更長的字符串並附加elipses(...)來表明它不適合,但至少將它放到左對齊將是一個很大的改進。
它看起來像它建立在某種按鈕的頂部;有沒有辦法去那個按鈕,所以我可以配置它?
這裏的工作的例子,如果有人想看看究竟OptionMenu如何處理長期的選擇(Python 2.6中)...
root = Tk()
body = Frame(root)
body.pack()
chosen = StringVar(root)
om = OptionMenu(body, chosen, 'short option', 'this is anything but a short option, and wordy to boot!')
om.config(width=10)
om.pack()
root.mainloop()
它與調整大小或放置小部件無關,它完全關於如何在按鈕上繪製所選項目。發佈的代碼可以運行以查看它的功能。 –
然後你可以在'om.config'中使用'wraplength'。它會顯示整個文本,但是會顯示多行。 – Gogo