gpt4 book ai didi

python - 获取另一个类中的条目文本

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:43 24 4
gpt4 key购买 nike

我正在 python 2.7.8 上使用 Tkinter

我有两个类,每个类都创建一个窗口。在 Interface 类中,创建根窗口并使用顶级函数调用第二个窗口。

根窗口有一个条目,第二个窗口只有一个标签,所以我想将(根窗口的)条目实时提供给标签(在第二个窗口中),所以我不想要单击一个按钮来给出文本。

我尝试过:

from Tkinter import *

class Interface(Frame):


def __init__(self, fenetre, **kwargs):
Frame.__init__(self, fenetre, width=0, height=0, **kwargs)
self.pack(fill=BOTH)

self.textA = StringVar()
self.textE = Entry(self, textvariable=self.textA, width=30)
self.textE.pack()
self.getT = self.textA.get()

self.newWindow = Toplevel(fenetre)
self.app = Interface2(self.newWindow)

class Interface2(Frame):


def __init__(self, fenetre, **kwargs):
Frame.__init__(self, fenetre, width=0, height=0, **kwargs)
self.pack(fill=BOTH)
fenetre.geometry("700x700")

self.textInRealTime = Label(self, text=interface.getT) #NameError: global name 'interface' is not defined

self.textInRealTime.pack()


fenetre = Tk()
interface = Interface(fenetre)

interface.mainloop()
interface.destroy()

所以,在注释行的 Interface2 类中,我尝试了这个 text=interface.getT 并得到了

NameError: global name 'interface' is not defined

我也尝试了这个text=Interface.getT并得到了这个错误#AttributeError: class Interface has no attribute 'getT'

如何实时获取一等舱到二等舱的入场信息?

最佳答案

@mhawke,感谢您如何将变量传递给其他类!所以我做到了 !!使用简单的线程将文本实时传输到另一个窗口:)这是代码:

from Tkinter import *
from threading import Thread

def updateA(textA, tempText):
while 1:
tempText.set(textA.get())

class Interface(Frame):


def __init__(self, fenetre, **kwargs):
Frame.__init__(self, fenetre, width=0, height=0, **kwargs)
self.pack(fill=BOTH)

self.textA = StringVar()
self.textE = Entry(self, textvariable=self.textA, width=30)
self.textE.pack()


self.newWindow = Toplevel(fenetre)
self.app = Interface2(self.newWindow, self.textA)

class Interface2(Frame):


def __init__(self, fenetre, textA, **kwargs):
Frame.__init__(self, fenetre, width=0, height=0, **kwargs)
self.pack(fill=BOTH)
fenetre.geometry("700x700")

self.tempText = StringVar()
self.textW = Label(self, textvariable=self.tempText)
self.textW.pack()
t = Thread(target=updateA, args=(textA,self.tempText))
t.start()


fenetre = Tk()
interface = Interface(fenetre)

interface.mainloop()
interface.destroy()

关于python - 获取另一个类中的条目文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24584148/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com