【发布时间】:2021-04-26 03:32:35
【问题描述】:
我编写了以下代码,用于在 GUI 窗口上显示一些内容。我从中删除的一些代码在这里不需要。 _print(text) 函数用于在 gui 屏幕上打印内容。谁能告诉我如何使这个函数全局可访问,以便同一类的其他函数中的 _print 语句也可以在 GUI 上更新。
我无法将此 _print 函数移到 GUI() 函数之外。
基本上我需要将我所有的打印语句推送到 tkinter 上。我该怎么做?
def accept_client_connections(master=None):
try:
while True:
# some code
_print("This statement needs to be printed on tkinter")
def GUI():
***def _print(text):
tex.insert(END, text + '\n')
tex.see("end")***
window = Tk()
#some code
tex = Text(window,width=80, height=40, font=('arial',10,'bold'), wrap=WORD)
tex.pack(side=TOP, fill=X,padx=10,pady=5)
messagebox.showinfo("","Waiting")
_print('xvdgfd...')
if __name__ == "__main__":
【问题讨论】:
-
我认为这个 [post] 应该可以解决您的问题。 [1]stackoverflow.com/questions/17395338/….
-
“我不能将这个 _print 函数移到 GUI() 函数之外。” - 你为什么不能呢?当你这样做时会发生什么?
-
@BryanOakley _print() 中的内容只能在调用 GUI 后打印。 tex 在创建 tkinter 窗口时被调用。即使我尝试在外面使用它,它也会给出 tex 是未定义变量的编译错误
-
你研究过类和 OOP。
-
@CoolCloud 是的课程确实帮助我解决了这个问题。非常感谢……
标签: python python-3.x tkinter