如何向tkinter窗口添加边距?
问题描述:
所以我至今一个简单的Python的Tkinter窗口,我添加文字,按钮等如何向tkinter窗口添加边距?
片段:
class Cfrm(Frame):
def createWidgets(self):
self.text = Text(self, width=50, height=10)
self.text.insert('1.0', 'some text will be here')
self.text.tag_configure('big', font=('Verdana', 24, 'bold'))
self.text["state"] = "disabled"
self.text.grid(row=0, column=1)
self.quitw = Button(self)
self.quitw["text"] = "exit",
self.quitw["command"] = self.quit
self.quitw.grid(row=1, column=1)
def __init__(self, master=None):
Frame.__init__(self, master)
self.pack()
self.createWidgets()
的问题是,我想有大约15-20像素窗边的边缘,我到处看,我找不到解决方案。另外
self.text.tag_configure('big', font=('Verdana', 24, 'bold'))
不起作用。任何可能的解
答
好吧,这里是我发现的问题1解决方法:
self.grid(padx=20, pady=20)
删除.text
似乎改变了整个框架。我仍然没有解决问题2.
答
使用网格命令的填充选项(padx,pady,ipadx,ipady)在文本小部件周围添加填充。例如:
self.text.grid(row=0, column=1, padx=20, pady=20)
如果你想围绕着整个GUI填充,当你打包应用程序框架添加填充:
self.pack(padx=20, pady=20)
当你说的标签命令不起作用,你怎么定义“不起作用”?你有错误吗?字体看起来很大,但不是粗体,大胆但不大,...?该命令对我来说看起来很好,当我运行它时,它工作正常。
您的示例并未显示您实际将该标记应用于一定范围的文本。你是?如果是这样,怎么样?如果你做了以下事情,会发生什么?
self.text.insert("1.0", 'is this bold?', 'big')
答
一个快速的方法来做到这一点是调整你的浮雕风格为平,然后你只需要调整你的边界宽度。
self.Border = Tkinter.Frame(self, relief='flat', borderwidth=4)
+0
与我的解决方案相同。 – 2010-09-07 23:25:03
当我这样做:self.text.insert(1.0 '?就是这种大胆', '大') 绝对没有changes.The文字显示出来,但是没有大胆 Padx,Pady不工作,唯一的问题是它为小部件添加了填充,而不是整个窗口,所以文本和按钮之间现在有空格。是否有可能做一些事情,比如调整窗口的大小以适应当前的大小? – 2010-09-04 19:07:18
self.pack(padx ...)非常有帮助! – qed 2014-11-12 20:28:43