Portál AbcLinuxu, 14. července 2025 06:19
CLAIMANT_PYTHON_OBJECT={ 'CLAIMANT_TITLE':'pan', 'CLAIMANT_FIRST_NAME':'ferda', 'CLAIMANT_SURNAME':'mravenec', 'CLAIMANT_PLURAL':'', #s 'CLAIMANT_PLURAL_CAPITALISED':'', #S 'CLAIMANT_ADDRESS':'mraveniste pod smrkem', 'CLAIMANT_POSTCODE_1111':'355', 'CLAIMANT_POSTCODE_222':'09', 'CLAIMANT_TELEPHONE_NUMBER':'158158158', 'CLAIMANT_FAX_NUMBER':'', 'CLAIMANT_EMAIL':'f.mravenec@mraveniste.cz', 'CLAIMANT_REF':'', } print('dictionary:', CLAIMANT_PYTHON_OBJECT) window=Tk() window.title('The Claimant') frame=Frame(window) def show_entry_field(): print(entry.get()) for key, value in CLAIMANT_PYTHON_OBJECT.items(): label=Label(frame, text=key) label.pack() entry=Entry(frame) entry.insert(0, value) entry.pack() button=Button(frame, text='Save', command=show_entry_field) button.pack() frame.pack(padx=10, pady=10) window.mainloop() print('dictionary amended:', CLAIMANT_PYTHON_OBJECT)Za pripadne napady predem diky.
Řešení dotazu:
CLAIMANT_PYTHON_OBJECT={ 'CLAIMANT_TITLE':'pan', 'CLAIMANT_FIRST_NAME':'ferda', 'CLAIMANT_SURNAME':'mravenec', 'CLAIMANT_PLURAL':'', #s 'CLAIMANT_PLURAL_CAPITALISED':'', #S 'CLAIMANT_ADDRESS':'mraveniste pod smrkem', 'CLAIMANT_POSTCODE_1111':'355', 'CLAIMANT_POSTCODE_222':'09', 'CLAIMANT_TELEPHONE_NUMBER':'158158158', 'CLAIMANT_FAX_NUMBER':'', 'CLAIMANT_EMAIL':'f.mravenec@mraveniste.cz', 'CLAIMANT_REF':'', } print('dictionary:', CLAIMANT_PYTHON_OBJECT) # <------ class DictFrame(Frame): def __init__(self, dictionary, *args, **kwargs): super(DictFrame, self).__init__(*args, **kwargs) self.dictionary = dictionary self.entries = [] def append(self, entry): self.entries.append(entry) def save(self): for entry in self.entries: print(entry.key, '=', entry.var.get()) self.dictionary[entry.key] = entry.var.get() # <------ class KeyEntry(Entry): def __init__(self, key, *args, **kwargs): self.key = key self.var = StringVar() kwargs['textvariable'] = self.var super(KeyEntry, self).__init__(*args, **kwargs) window=Tk() window.title('The Claimant') frame=DictFrame(CLAIMANT_PYTHON_OBJECT, window) # <------ for key, value in CLAIMANT_PYTHON_OBJECT.items(): label=Label(frame, text=key) label.pack() entry=KeyEntry(key, frame) # <------ entry.insert(0, value) entry.pack() frame.append(entry) # <------ button=Button(frame, text='Save', command=frame.save) # <------ button.pack() frame.pack(padx=10, pady=10) window.mainloop() print('dictionary amended:', CLAIMANT_PYTHON_OBJECT)
entries = [] for key, value in CLAIMANT_PYTHON_OBJECT.items(): ... entries.append((key, entry)) for ent in entries: print ent[1].get()
import logging from decimal import * import os import glob import pickle from tkinter import * import tkinter.messagebox as box CLAIMANT_PYTHON_OBJECT={ 'CLAIMANT_TITLE':'pan', 'CLAIMANT_FIRST_NAME':'ferda', 'CLAIMANT_SURNAME':'mravenec', 'CLAIMANT_PLURAL':'', #s 'CLAIMANT_PLURAL_CAPITALISED':'', #S 'CLAIMANT_ADDRESS':'mraveniste pod smrkem', 'CLAIMANT_POSTCODE_1111':'355', 'CLAIMANT_POSTCODE_222':'09', 'CLAIMANT_TELEPHONE_NUMBER':'158158158', 'CLAIMANT_FAX_NUMBER':'', 'CLAIMANT_EMAIL':'f.mravenec@mraveniste.cz', 'CLAIMANT_REF':'', } print('dictionary:', CLAIMANT_PYTHON_OBJECT) window=Tk() window.title('The Claimant') frame=Frame(window) def show_entry_field(): print(entry.get()) entries = [] for key, value in CLAIMANT_PYTHON_OBJECT.items(): label=Label(frame, text=key) label.pack() entry=Entry(frame) entry.insert(0, value) entry.pack() entries.append((key, entry)) button=Button(frame, text='Save', command=show_entry_field) button.pack() frame.pack(padx=10, pady=10) window.mainloop() for ent in entries: print (ent[1].get()) print('dictionary amended:', CLAIMANT_PYTHON_OBJECT)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.