为了账号安全,请及时绑定邮箱和手机立即绑定

tkinter scrolledtext.ScrolledText 没有 get 属性

tkinter scrolledtext.ScrolledText 没有 get 属性

HUH函数 2023-09-19 17:39:24
我似乎无法将 ScrolledText Widget 的内容打印到控制台。我已在 ScrolledText 小部件上运行帮助命令:print(help(scrolledtext.ScrolledText))这输出表明 .get 方法(用于获取 tk.Text Widgets 的内容)也存在于该小部件中。 |  get(self, index1, index2=None) |      Return the text from INDEX1 to INDEX2 (not included).那么为什么会出现这样的行:print(myScrollTextWidget.get("1.0","end"))结果出现此错误:AttributeError: 'NoneType' object has no attribute 'get'当按钮被按下时。这是我正在使用的可运行代码片段:import tkinter as tkfrom tkinter import scrolledtext#Declare Rootroot = tk.Tk()root.title("Scrolltext Widget")tk.Label(root,text="My Scrolled Text Widget",font=("Times New Roman",25))\    .grid(row=0,column=1)#Define ScrollTextWidget#wrap keyword used to wrap around textmyScrollTextWidget = scrolledtext.ScrolledText(root,wrap=tk.WORD,width=50,height=20,font=("Times New Roman",15))\    .grid(row=1,column=1)print(help(scrolledtext.ScrolledText))def printToConsole():    print(myScrollTextWidget.get("1.0","end"))#ButtonsmyButton = tk.Button(root,text="Print to console!",command=printToConsole).grid(row=2,column=1)root.mainloop()
查看完整描述

1 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

当您.pack().grid()在同一行中时,您不会向变量返回任何内容,因此该变量是None

相反,.pack()或者.grid()在另一行中,如下所示:

myScrollTextWidget = scrolledtext.ScrolledText(root,wrap=tk.WORD,width=50,height=20,font=("Times New Roman",15))
myScrollTextWidget.grid(row=1,column=1)

一般来说,在同一行中进行网格化或打包是相当错误的。如果您想出于配置或其他目的访问对象,则应该避免使用它。


查看完整回答
反对 回复 2023-09-19
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信