python - 蟒蛇 tkinter
问题描述
我正在尝试创建一些将文本从 txt 文件插入到文本框中的代码,并且我不断在文本框中获取命名错误,但我不知道如何修复它。我已经查看了许多其他错误,其中包含我的错误类型,但我仍然不知道如何修复此代码。抱歉,如果这是重复的。
class myClass():
def MyMethod():
t = open('Notepad.txt', 'r')
return t.read()
def New_Window():
window = Toplevel(tk)
window.geometry("400x400")
window.title("NotePad")
window.resizable(width=FALSE, height=FALSE)
t = Text(window, height=20, width=45)
t.grid(column=0, row=0)
message = myClass.MyMethod
t.insert(0.0, message)
Button(window, text="Quit", command=tk.destroy).grid(column=0,row=5)
Button(window, text="Save", command=lambda: Save()).grid(column=0, row=6)
def Save():
text = t.get('1.0', END)
open('Notepad.txt', 'w').close()
f = open('Notepad.txt', 'a')
f.write(text + '\n')
messagebox.showinfo('-- COMPLETE --', 'Saved', icon='info')
f.close()
解决方案
您的代码中有错误。以下将方法本身传递给message
变量
message = myClass.MyMethod
您需要在方法中添加括号才能调用它并将返回的值保存在变量中
message = myClass.MyMethod()
推荐阅读
- javascript - 从非反应 jquery html 表单页面传递参数以反应应用程序
- javascript - 仅重置表单的一部分
- symfony - services.yaml 配置 - 没有命名空间的自动装配
- javascript - 为什么这个 vue 转换没有按预期工作?
- r - 根据条件拆分为 list(),省略 False 元素
- powershell - 使用 Invoke-CimMethod 'Activate' 来激活 Windows 电源计划,而不是我得到 Invalid Class 我做错了什么?
- spring-boot - 在 Gradle 中使用 YAML 中的环境变量
- python - 将图像上传到 S3 并在 Lambda 中使用 Python 进行操作 - 最佳实践
- c# - 在 c# 中迭代队列,而每次迭代的出队
- c# - 微软的ServiceProvider类需要重新赋值,否则返回null?