我有一个OptionMenu可以从可以非常长的字符串列表中进行选择。我不希望窗口一直调整大小,所以我将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()
答案 0 :(得分:0)
如果你能提供代码,那将是一个很大的帮助
无论如何,如果您使用网格来对齐 OptionMenu ,那么您可以使用不同的列或增加columnspan,甚至可以使用sticky
来对齐它。