Tkinter Text Widget存储文本

时间:2014-11-10 20:48:20

标签: python tkinter tk

我想创建一个文本框,用户可以在其中键入多行文本并将其另存为文本文件。不幸的是,我的错误是“Nonetype,对象没有属性'获取'在下面的代码片段的第4行。我尝试使用Entry小部件,它使用相同的行工作正常。但是,一行是不够的我错过了什么?谢谢你。

def save():
file = tkFileDialog.asksaveasfile(mode='w')
if file != None:
    data = entryBox.get('1.0', END+'-1c')
    file.write(data)
    file.close()

fr = Frame(root,height=100, width=100)
fr.pack()

entryLabel = Label (fr, text = "Forecast Notes:").pack(side = TOP)

entryBox = Text (fr, width = 50, height=20).pack()

saveButton = Button (fr, text = "Save", command = save).pack()
clearButton = Button (fr, text = "Clear", command = clear).pack(side=TOP)

1 个答案:

答案 0 :(得分:0)

pack()没有返回值。 您必须分配创建对象,将其分配给变量并在此之后打包。

例如,更改此内容:

entryBox = Text (fr, width = 50, height=20).pack()

进入这个:

entryBox = Text (fr, width = 50, height=20)
entryBox.pack()