После долгого использования MultiListBox в качестве таблицы для записей решил перейти на Treeview что под ttk. Ну и возникла проблема использования самого виджета, а именно запускаю скрипт а он выводит мне не все записи из базы. Копирую этот же select в MultiListBox все работает нормально. Прилагаю свой код c использованием ttk.Treeview.
#-*- coding:utf-8 -*-
from Tkinter import *
import sqlite3
import ttk
from PIL import Image, ImageTk
c = sqlite3.connect(database=r"avto.sdb")
cu = c.cursor()
root = Tk()
root.wm_title("multicolumn ListBox")
fr = ttk.Frame(root)
fr.pack()
# Определяем таблицу Treeview
tablegas = ttk.Treeview(fr, show='headings', selectmode='browse', height=10)
# Даем заголовки колонкам
tablegas["columns"]=("date","avtopart","namepart","numpart","mileage","brand","cost","sto","tools","komment")
tablegas.heading("date", text=u"Дата", anchor='w')
tablegas.heading("avtopart", text=u"Часть авто", anchor='w')
tablegas.heading("namepart", text=u"Наименование ремонта", anchor='w')
tablegas.heading("numpart", text=u"Номер детали", anchor='w')
tablegas.heading("mileage", text=u"Пробег", anchor='w')
tablegas.heading("brand", text=u"Фирма", anchor='w')
tablegas.heading("cost", text=u"Стоимость ремонта", anchor='w')
tablegas.heading("sto", text=u"Место ремонта", anchor='w')
tablegas.heading("tools", text=u"Инструмент", anchor='w')
tablegas.heading("komment", text=u"Комментарии", anchor='w')
tablegas.column("date", stretch=0, width=70)
tablegas.column("avtopart", stretch=0, width=90)
tablegas.column("namepart", stretch=0, width=90)
tablegas.column("numpart", stretch=0, width=90)
tablegas.column("mileage", stretch=0, width=80)
tablegas.column("brand", stretch=0, width=100)
tablegas.column("cost", stretch=0, width=90)
tablegas.column("sto", stretch=0, width=80)
tablegas.column("tools", stretch=0, width=100)
tablegas.column("komment", stretch=0, width=100)
sel = 'SELECT date, avtoparts, namerepair, numberparts, mileage, brand, cost, sto.place as "СТО" FROM repair, sto WHERE sto.ID = repair.sto'
cu.execute(sel)
for item in cu.fetchall():
tablegas.insert('', 'end', values=item)
scroll = ttk.Scrollbar(fr)
tablegas.config(yscrollcommand=scroll.set)
scroll.config(command=tablegas)
scroll.grid(row=0, column=1, sticky=N+S)
tablegas.grid(column=0, row=0, sticky='nsew')
Style = ttk.Style()
ttk.Style.theme_use(Style, "clam")
mainloop()
c.close()