Seite 1 von 1

Daten verarbeiten

Verfasst: Sonntag 1. Mai 2011, 16:00
von pixewakb
Hi,

ich versuche manchmal ein Fenster in eine Funktion zu packen, die ich dann mittels app = gui() aufrufen will. Das klappt eigentlich auch schön, nur habe ich dann Probleme mit einer Funktion auf Daten zuzugreifen, die ein Benutzer im Fenster eingegeben hat oder aber mit einer Funktion Felder, die sich in der gui-Funktion befinden, zu manipulieren.

Gibt es hier eine vernünftige Lösung bzw. eine Empfehlung???

Läuft:

Code: Alles auswählen

from tkinter import *

def verarbeiten():
    wert = Feld.get()
    print (wert)
    return 0

gui = Tk()
    
Feld = Entry(gui)
Feld.pack()

OKButton = Button(gui, text='OK', command=verarbeiten)
OKButton.pack()

gui.mainloop()
Dagegen läuft nicht, weil Feld nicht definiert ist.

Code: Alles auswählen

from tkinter import *

def verarbeiten():
    wert = Feld.get()
    print (wert)
    return 0

def schnittstelle():
    gui = Tk()
    
    Feld = Entry(gui)
    Feld.pack()

    OKButton = Button(gui, text='OK', command=verarbeiten)
    OKButton.pack()
    
    return gui

app = schnittstelle()
app.mainloop()

Re: Daten verarbeiten

Verfasst: Sonntag 1. Mai 2011, 16:37
von wuf
Hallo pixewakb

Kannst du einmal das folgende ausprobieren:

Code: Alles auswählen

# -*- coding: utf-8 -*-
from tkinter import *

def verarbeiten():
    wert = app.Feld.get()
    print (wert)
    return 0

def schnittstelle():
    gui = Tk()
   
    gui.Feld = Entry(gui)
    gui.Feld.pack()

    OKButton = Button(gui, text='OK', command=verarbeiten)
    OKButton.pack()
   
    return gui

app = schnittstelle()
app.mainloop()
Gruß wuf :wink:

Re: Daten verarbeiten

Verfasst: Sonntag 1. Mai 2011, 16:44
von pixewakb
Danke, läuft und ich kapiere den Fehler, den ich gemacht hatte! ! !