Hi, all!
In my programm i have to insert a variable from class 2 to class 1 and I
get error NameError: global name 'd' is not defined. How do I get access
to d.entry.insert() method of class 1
class 1:
<shudder> Does Python even allow numeric class names?[/QUOTE]
:-D don't know
REAL code, stripped to the minimum that duplicates your problem,
is always better than pseudo-code...
I thought that is it...
NO : ???
What, might I ask, does .insert() /do/ for an Entry() object?
That insert text into entry object.
As far as I can tell, "class 1" is creating some GUI button.
Pressing that button invokes your callclass2window(), which creates a
new "class 2" instance, and then throws it away.
Yes, exactly
Give us code that we can /run/ and we might be able to give you
an answer...
I try:
from Tkinter import *
class First:
def __init__(self):
self.root = Tk() # create window contents as children to
root..
self.entryframe = Frame(self.root)
self.entryframe.pack(fill=BOTH,expand=1)
self.entry = Entry(self.entryframe)
self.entry.pack(side=TOP,expand=1,fill=BOTH)
self.entry.focus()
self.entry.bind('<Return>',(lambda event: self.fetch())) #
on enter key
self.button =
Button(self.entryframe,text="Call",command=self.getvar)
self.button.pack(side=LEFT,expand=YES,fill=BOTH)
self.root.mainloop()
def fetch(self):
print 'Input => "%s"' % self.entry.get() # get text form entry
def getvar(self,event=0):
c=Second(self,self.root)
class Second:
def __init__(self,parent,s="thing"):
self.root = Tk()
self.ent = Entry(self.root)
self.ent.pack()
self.btn = Button(self.root,text='Fetch',command=self.fetch)
self.btn.pack(side=RIGHT)
def fetch(self):
text = self.ent.get() # get text form entry in this window
d.entry.insert(0, text)# must insert in other window
d = First() #First window