Python 将值发送到另一个文件
我编写了一个带有Wiki的小GUI,并尝试将我的主GUI和Wiki GUI以及函数分开。我设法在我的主界面中有一个框架,在那里我“加载”了Wiki GUI。现在我在我的主页上有了一个条目,我还想在维基上搜索。因此,我必须从Wiki文件调用一个函数并发送一个值。但问题是什么也没发生。但是打印会被执行 这是我的两个文件,但缩短了:Python 将值发送到另一个文件,python,class,tkinter,widget,Python,Class,Tkinter,Widget,我编写了一个带有Wiki的小GUI,并尝试将我的主GUI和Wiki GUI以及函数分开。我设法在我的主界面中有一个框架,在那里我“加载”了Wiki GUI。现在我在我的主页上有了一个条目,我还想在维基上搜索。因此,我必须从Wiki文件调用一个函数并发送一个值。但问题是什么也没发生。但是打印会被执行 这是我的两个文件,但缩短了: import Wiki #[...] class MyFirstGUI(object): def __init__(self, master): #[
import Wiki
#[...]
class MyFirstGUI(object):
def __init__(self, master):
#[...]
self.gui_control = ttk.Notebook(master)
self.wiki_gui = ttk.Frame(self.gui_control, borderwidth=0)
self.wiki_search = Entry(master, width=27,font=("Century Gothic",10))
self.wiki_search.grid(row=11,column=0,padx=17 ,pady=0, sticky=N+W)
self.wiki_search.bind('<Return>',self.send_search)
# This is how i placed my WikiFrame
e3 = Wiki.WikiFrame(self.wiki_gui)
e3.grid(row=0, column=0, sticky="NESW")
def send_search(self,event):
wiki = Wiki.WikiFrame(self.wiki_gui)
wiki.fill_wiki_value(self.wiki_search.get())
条目设置在单独的wiki框架上,而不是显示为“e3”的框架上。当您发送搜索时,是否打算创建新的wiki框架或使用e3?在“填充wiki”值中,您可以在设置后打印条目文本吗?我想我已经这样做了,“e3.填充wiki”值(self.wiki\u search.get())并删除“wiki=wiki.wiki”(self.wiki\u gui)'成功了。您一定是在查看e3时填充了一个未显示的wiki条目。贪婪的回答:)
import tkinter as tk
class WikiFrame(tk.Frame):
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.rowconfigure(1, weight=1)
self.columnconfigure(4, weight=1)
self.Search_Entry = tk.Entry(self, width=20,font=("Century Gothic",12))
self.Search_Entry.grid(row=0,column=2, sticky='NESW', padx=10)
def fill_wiki_value(self,value):
print('Hello')
self.Search_Entry.insert(tk.END, value)