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