[Python-de] Tkinter entry widget Frage

Keule m_konermann at gmx.de
Tue Mar 5 16:57:09 EST 2002


Hallo zusammen! 

ich habe mit Hilfe eines TK entry widgets folgenden code geschrieben:

from Tkinter import *
from quitter import Quitter
fields = 'Minimalwert','Maximalwert','Pre-Kondition','Post-Kondition','Zeile','Spalte'

def fetch(entries):
    for entry in entries:
        print 'Input => "%s"' % entry.get()         # get text
    print 'entries=',entries
    print'entries[1]=',entries[1]

def makeform(root, fields):
    entries = []
    for field in fields:
        row = Frame(root)                           # make a new row
        lab = Label(row, width=15, text=field)       # add label, entry
        ent = Entry(row)
        row.pack(side=TOP, fill=X)                  # pack row on top
        lab.pack(side=LEFT)
        ent.pack(side=RIGHT, expand=YES, fill=X)    # grow horizontal
        entries.append(ent)
    return entries

#if __name__ == '__main__':
def variab():
    root = Tk()
    root.title('Variableneingabe')
    ents = makeform(root, fields)
    root.bind('', (lambda event, e=ents: fetch(e)))  
    Button(root, text='nächste Variable',command=(lambda e=ents: 
fetch(e))).pack(side=LEFT)
    Quitter(root).pack(side=RIGHT)
    root.mainloop()


jetzt rufe ich obige variab() Funktion von einem anderen Menü auf und möchte die obigen 6 Werte für fields setzen.
ich gebe zum test mal die Zahlen von 2-7 ein und lasse sie über die print Anweisung wieder ausgeben, hier die Ausgabe:

C:\Arbeit_Diplomarbeit\__Benutzerschnittstelle>python tem.py
Input => "2"
Input => "3"
Input => "4"
Input => "5"
Input => "6"
Input => "7"
entries= [<Tkinter.Entry instance at 0x008CCC20>, <Tkinter.Entry instance at 0x0
08CDE28>, <Tkinter.Entry instance at 0x008CE528>, <Tkinter.Entry instance at 0x0
08CECA0>, <Tkinter.Entry instance at 0x008CF418>, <Tkinter.Entry instance at 0x0
08CFC58>]
entries[1]= .9229696.9231912


Zu sehen ist, dass alles möglich zurückgegeben wird, nur nicht meine eingegebenen Zahlen 2-7.
Hat jemand vielleicht eine Idee für mich ?

Grüsse
Marcus






More information about the Python-de mailing list