python - 条目如何连接到方法
问题描述
作为一种实践,我正在尝试为 gui 编写代码,并实现了一个名为 get_me() 的方法来搜索。在这段代码中,我导入了维基百科,并尝试搜索关于谷歌的信息,我应该得到关于谷歌的信息。但我收到一些错误说“条目未定义”,位于第 34 行
import tkinter as tk
import os, sys
import wikipedia
class GuiTest():
def __init__(self,root):
self.root = root
self.root.title('CHOI')
frame3 = tk.Frame(root)
label1=tk.Label(frame3,text='please enter your name')
entry = tk.Entry(frame3)
label1.pack(padx=5, pady=5,expand=True, fill='both',side='left')
entry.pack(padx=5, pady=5,expand=True, fill='both',side='left')
btn1=tk.Button(frame3, text = 'search',command=self.get_me)
btn1.pack(padx=6, pady=6,expand=True, fill='both', side='right')
frame3.pack(padx=5,pady=5, expand=True, fill='both')
frame1=tk.Frame(root)
btn2=tk.Button(frame1,text='exit',command = self.exit)
btn2.pack(padx=7, pady=7, fill='both', side='bottom')
frame1.pack(padx=7, pady=7, fill='both')
frame2 = tk.Frame(root)
scroll=tk.Scrollbar(frame2)
scroll.pack(side='right', fill='both')
answer = tk.Text(frame2, width=30, height=10, yscrollcommand = scroll.set)
scroll.config(command=answer.yview)
answer.pack(side='bottom')
frame2.pack()
root.mainloop()
def exit(self):
sys.exit(0)
def get_me(self):
entry_value = entry.get()
answer_value = wikipedia.summary(entry_value)
answer.insert(INSERT, answer_value)
if __name__=="__main__":
root =tk.Tk()
bapp = GuiTest(root)
bapp.mainloop
解决方案
改成in功能entry
_self.entry
__init__
self.entry = tk.Entry(frame3)
#do self.entry wherever entry was there
#and then in get_me() function do self.entry
entry_value = self.entry.get()
推荐阅读
- mysql - django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on 'db' (115)") 总是出现这个错误
- python - python中字符串中的模式出现
- java - 如果没有 -javaagent 参数,AspectJ 不会运行
- javascript - React Draft.js 中的图像显示问题
- java - org.hibernate.annotations.JoinColumnsOrFormulas OR EXPRESSION
- javascript - 在页面加载时执行 python 脚本
- acumatica - 将视图传递给 Acumatica 中的方法
- disk - 为什么 RAID 级别 2 需要磁盘同步旋转?
- angular - 接收新数据时角材料表不更新
- python - 使用 UCX 协议 Dask 分布式