Прокрутка автоматически в виде дерева - PullRequest
0 голосов
/ 13 июня 2019

Я пытаюсь обновить таблицу ttk.treeview и оставить ее там, где она была до обновления.

Всякий раз, когда я обновляю таблицу, она показывает верхнюю часть, но я хочупросто оставьте все как есть, просто введите новую строку или обновите столбец этой строки.

class TABLA():

    def show(self, row, column, rowspan):
        self.row = row
        self.column = column
        self.rowspan = rowspan
        global FondoBase
        global Dir




        self.Tabla = ttk.Treeview(FondoBase, columns=self.Columnas[1:], height=40)

        self.Tabla.heading("#0", text=self.Columnas[0])
        for i in self.Columnas[1:]:
            self.Tabla.heading("{}".format(i), text="{}".format(i))

        self.scrol = Scrollbar(FondoBase, command=self.Tabla.yview) 
        self.Tabla.config(yscrollcommand=self.scrol.set)


        with connect('{}'.format(Dir)) as Conexion:
            Seleccion = Conexion.cursor()
            Seleccion.execute("""SELECT * FROM Table""")
            result = Seleccion.fetchall()


        for i in range(len(result)):
            if i%2 == 0:
                self.Tabla.insert("", i, text="{}".format(result[i][0]), values=(result[i][1:]), tags=("par"))
                self.Tabla.tag_configure("par", background="#e9e9e9")

            else:
                self.Tabla.insert("", i, text="{}".format(result[i][0]), values=(result[i][1:]), tags=("impar"))

        self.Tabla.grid(row=row, column=column, rowspan=rowspan, sticky="e", pady=30)
        self.scrol.grid(row=row, column=column+1, sticky="wns", rowspan=rowspan, pady=30)`

Я пытался сделать это с помощью методов Tabla.yview_moveto() и scrol.set(), но они не работали.

...