Hallo bb21
Hier ein Experimentier-Skript für das Übertragen von Eingabedaten an eine Ausgabe basierend auf dem von 'busfahrer' vorgeschlagene 'enumerate'. (Lasse dich nicht durch die Farben ablenken!.Diese veranschaulichen nur die Verteilung der verschiedenen 'Frames'-Behälter):
Code: Alles auswählen
# wuf_ref: entry_on_mainwindow_01_01.py
import Tkinter as tk
def end_app():
"""Beende die Anwendung"""
app_win.destroy()
def entry_output():
"""Uebertrage Daten von der Eingabe in die Ausgabe"""
for index, entry_obj in enumerate(entry_obj_list):
entry_data = entry_obj.get()
output_obj_list[index].config(text=entry_data)
#~~ Erstelle das Hauptfenster
app_win = tk.Tk()
#~~ Abmessungen fuer das Hauptfenster
app_win.geometry('200x150')
#~~ Erstelle alle Behaelter-Objekte
in_out_frame = tk.Frame(app_win)
in_out_frame.pack(side='top', fill='both', expand='yes')
entry_frame = tk.Frame(in_out_frame, bg='yellow')
entry_frame.pack(side='left', fill='both', expand='yes')
output_frame = tk.Frame(in_out_frame, bg='green')
output_frame.pack(side='left', fill='both', expand='yes')
button_frame = tk.Frame(app_win, bg='steelblue')
button_frame.pack(side='top', fill='both', expand='yes')
#~~ Erstelle alle Bedienungsschaltflaechen-Objekte
# Schaltflaeche: Beenden
button_end = tk.Button(button_frame, text="Beenden", highlightthickness=0,
command=end_app)
button_end.pack(side='left', expand='yes')
# Schaltflaeche: Ausgeben
button_output = tk.Button(button_frame, text="Ausgabe", highlightthickness=0,
command=entry_output)
button_output.pack(side='left', expand='yes')
#~~ Variable-Liste
a = ["A", "B", "C", "D"]
#~~ Sammellisten fuer die Eingabe- und Ausgabe Widget-Objekte
entry_obj_list = list()
output_obj_list = list()
for index, variable in enumerate(a):
#~~ Erstelle Eingabe-Objekt
entry = tk.Entry(entry_frame, bg='white', width=10, highlightthickness=0)
entry.pack(side='top', expand='yes', pady=2)
#~~ Uebertrage Variable aus der Varible-Liste ins Eingabefeld
entry.insert(0, variable)
#~~ Erstelle Ausgabe-Objekt
output_label = tk.Label(output_frame, bg='white', width=10, anchor='w')
output_label.pack(side='top', expand='yes', pady=2)
#~~ Speichere Eingabe- und Ausgabe-Objekt in der zugehoerigen Objekt-
# Sammelliste
entry_obj_list.append(entry)
output_obj_list.append(output_label)
app_win.mainloop()
Gruss wuf
