Python 带换行符的按钮不';无法在Mac OS X上正确显示

Python 带换行符的按钮不';无法在Mac OS X上正确显示,python,macos,button,tkinter,Python,Macos,Button,Tkinter,这段代码在Windows中运行良好。在MacOSX上,它只在按钮上显示“Multiple”,所有超过换行符的内容都会被删除。我正在Mac上运行Python 2.6.5 import Tkinter as tk class App: def __init__(self, master): self.a_button = tk.Button(master, text="Multiple\nLines\nOf Text") self.a_button.pack(

这段代码在Windows中运行良好。在MacOSX上,它只在按钮上显示“Multiple”,所有超过换行符的内容都会被删除。我正在Mac上运行Python 2.6.5

import Tkinter as tk
class App:
    def __init__(self, master):
        self.a_button = tk.Button(master, text="Multiple\nLines\nOf Text")
        self.a_button.pack()

ROOT = tk.Tk()
APP = App(ROOT)
ROOT.mainloop()

Mac原生按钮不允许您这样做;对于不同的控件大小,它们有3个预定义的高度,仅此而已。其他按钮样式支持任意尺寸;一个选项是使用平铺按钮:

    self.a_button = tk.Widget(master, 'ttk::button',
                              dict(text="Multiple\nLines\nOf Text"))
酷。Python2.7/3.1具有“真正的”平铺支持,但只要您在下面使用足够新的Tk(例如Tcl/Tk 8.5.7附带的OS X 10.6),上述功能就可以正常工作