Python Tkinter Entry Widget Overwrite -
this question has answer here:
- set text of entry using button tkinter 2 answers
is possible overwrite entry widget?
i have more 10 entries widgets updated in while loop , worrying efficiency.
def update_data(self): if(index <= 1): self.n_entry.insert(end, index) else: self.a_entry.delete(0, end) self.b_entry.delete(0, end) self.c_entry.delete(0, end) self.d_entry.delete(0, end) self.e_entry.delete(0, end) self.f_entry.delete(0, end) self.g_entry.delete(0, end) self.h_entry.delete(0, end) self.i_entry.delete(0, end) self.l_entry.delete(0, end) self.a_entry.insert(0, index) self.b_entry.insert(0, index) self.c_entry.insert(0, index) self.d_entry.insert(0, index) self.e_entry.insert(0, index) self.f_entry.insert(0, index) self.g_entry.insert(0, index) self.h_entry.insert(0, index) self.i_entry.insert(0, index) self.l_entry.insert(0, index) is above solution way update entries widgets?
here simple example of how use list store entry fields instead.
as can see below example takes 4 lines of code create entry widgets. list , loop. benefit can use same 4 lines of code create many or few entry widgets or other widget matter want.
from tkinter import * root = tk() entry_list = [] in range(10): entry_list.append(entry(root)) entry_list[i].pack() def update_entry_fields(): in entry_list: i.delete(end) i.insert(0, "test") btn1 = button(root, text="test", command = update_entry_fields) btn1.pack() root.mainloop() this example using for loop update each entry can use index well.
you use dictionary same.
Comments
Post a Comment