Первая проблема: в моем Tkinter GUI у меня есть два дерева, которые имеют общую запись базы данных "MASA". Я определяю два кода get_cursor (get_cursor1, get_cursor2), но "MASA" отображается только в первом обзоре. Что я не прав? Как я могу исправить?
Вторая проблема: self.rez_oda_var.set (row [0]) IndexError: строковый индекс вне диапазона
'' '
=== ========= ПЕРВЫЙ ТРЕНИРОВОК ================
list_Frame = Frame(rec_frame)
self.rez_table = ttk.Treeview(list_Frame, selectmode="extended", columns=("MASA"), xscrollcommand = scroll_x.set, yscrollcommand = scroll_y.set)
self.rez_table.heading("MASA", text="MASA", anchor="w")
self.rez_table["show"] = "headings"
self.rez_table.pack(fill=BOTH, expand=1)
self.rez_table.bind("<ButtonRelease-1>", self.get_cursor1)
self.fetch_data()
def get_cursor1(self, event):
cursor_row = self.rez_table.focus()
contents = self.rez_table.item(cursor_row)
row = contents["values"]
self.rez_masa_var.set(row[2])
============ ВТОРОЙ ТРЕНИРОВОК =================
masa_Frame = Frame(masa_frame)
self.masa_table = ttk.Treeview(masa_Frame, selectmode="extended", columns=("MASA"), yscrollcommand = scroll_y.set)
self.masa_table.heading("MASA", text="MASA", anchor="w")
self.masa_table.column("MASA", width=40, minwidth=50)
self.masa_table["show"] = "headings"
self.masa_table.pack(fill=BOTH, expand=1)
self.masa_table.bind("<ButtonRelease-1>", self.get_cursor2)
self.fetch_data()
def get_cursor2(self, event):
cursor_row = self.masa_table.focus()
contents = self.masa_table.item(cursor_row)
row = contents["values"]
self.rez_masa_var.set(row[0])
============ SELF.FETCH.DATA ======= ==========
def fetch_data(self):
con=pymysql.connect(host="localhost", user="root", password="",
database="kayıtlar")
cur=con.cursor()
cur.execute("select * from reservation")
rows=cur.fetchall()
if len(rows)!=0:
self.rez_table.delete(*self.rez_table.get_children())
for row in rows:
self.rez_table.insert("", END, values=row)
con.commit()
self.temizle()
con.close()
'' '
СМОТРЕТЬ, КАК: