python,tkinter,我如何向tkinter文本框显示控制台结果



如果我单击菜单栏中的noticeall,我希望它显示在mainframe.py的文本区域如何在defnoticeall中编写代码。。plz

main.py文件代码为

import mainframe
mainframe.show()

大型机.py文件代码为

def show ():
frame = tkinter.Tk()
frame.title('test')
frame.geometry('800x600')
frame.resizable(False, False)
sf = ScrolledFrame(frame, width=800, height=600)
sf.pack(side="top", expand=1, fill="both")
sf.bind_arrow_keys(frame)
sf.bind_scroll_wheel(frame)
menu_bar = menubar.make_menubar(frame,)
frame.config(menu=menu_bar)
inner_frame = sf.display_widget(Frame)
entry = Entry(inner_frame, width=750)
entry.pack()
entry.focus_set()
textarea = Text(inner_frame, width=750, height=200)
textarea.pack()
frame.mainloop()

菜单栏.py文件代码为

def make_menubar(frame):
menubar = Menu(frame)
file_menu = Menu(menubar, tearoff=0)
file_menu.add_command(label="noticeall",command=noticeall)
def noticeall():
notice_list = ncontroller.select_all()
print_list(notice_list)'

plz推荐下一行代码print_list.insert(textarea)???-我不能,textarea是主框架中的局部变量.py

def make_menubar(frame, textarea):
menubar = Menu(frame)
file_menu = Menu(menubar, tearoff=0)
file_menu.add_command(label="noticeall", command=lambda: noticeall(textarea))
return menubar

def noticeall(textarea):
notice_list = ncontroller.select_all()
textarea.insert(notice_list)

事实上,最好的方法是创建一个类。通过self传递参数。

最新更新