Задание
Написать программу, которая будет выводить список автозачастей, где будет ID, наименование, категория(фильтры, шины, диски, колодки), цена.
Функционал программы
Программа выводит список автозачастей, где есть ID, наименование, категория(фильтры, шины, диски, колодки), цена.
Фрагмент программного кода
# Класс Main class Main(tk.Frame): def __init__(self, root): super().__init__(root) self.init_main() self.db = db self.view_records() # Главное окно def init_main(self): toolbar = tk.Frame(bg='beige', bd=2) toolbar.pack(side=tk.TOP, fill=tk.X) self.add_img = tk.PhotoImage(file='add.png') btn_open_dialog = tk.Button(toolbar, text='Добавить товар ', command=self.open_dialog, bg='beige', bd=0, compound=tk.TOP, image=self.add_img) btn_open_dialog.pack(side=tk.LEFT) self.update_img = tk.PhotoImage(file='edit.png') btn_edit_dialog = tk.Button(toolbar, text='Редактировать', bg='beige', bd=0, image=self.update_img, compound=tk.TOP, command=self.open_update_dialog) btn_edit_dialog.pack(side=tk.LEFT) self.delete_img = tk.PhotoImage(file='delete.png') btn_delete_dialog = tk.Button(toolbar, text='Удалить', bg='beige', bd=0, image=self.delete_img, compound=tk.TOP, command=self.delete_records) btn_delete_dialog.pack(side=tk.LEFT) self.search_img = tk.PhotoImage(file='search.png') btn_search = tk.Button(toolbar, text='Поиск', bg='beige', bd=0, image=self.search_img, compound=tk.TOP, command=self.open_search_dialog) btn_search.pack(side=tk.LEFT) self.refresh_img = tk.PhotoImage(file='refresh.png') btn_refresh = tk.Button(toolbar, text='Обновить', bg='beige', bd=0, image=self.refresh_img, compound=tk.TOP, command=self.view_records) btn_refresh.pack(side=tk.LEFT) self.tree = ttk.Treeview(self, columns=('ID', 'description', 'category', 'price'), height=15, show='headings') self.tree.column('ID', width=30, anchor=tk.CENTER) self.tree.column('description', width=365, anchor=tk.CENTER) self.tree.column('category', width=150, anchor=tk.CENTER) self.tree.column('price', width=100, anchor=tk.CENTER) self.tree.heading('ID', text='ID') self.tree.heading('description', text='Наименование') self.tree.heading('category', text='Категория') self.tree.heading('price', text='Цена') self.tree.pack(side=tk.LEFT) scroll = tk.Scrollbar(self, command=self.tree.yview) scroll.pack(side=tk.LEFT, fill=tk.Y) self.tree.configure(yscrollcommand=scroll.set) # Добавление данных def records(self, description, category, price): self.db.insert_data(description, category, price) self.view_records() # Обновление данных def update_record(self, description, category, price): self.db.c.execute('''UPDATE autoshop SET description=?, category=?, price=? WHERE ID=?''', (description, category, price, self.tree.set(self.tree.selection()[0], '#1'))) self.db.conn.commit() self.view_records() # Вывод данных def view_records(self): self.db.c.execute('''SELECT * FROM autoshop''') [self.tree.delete(i) for i in self.tree.get_children()] [self.tree.insert('', 'end', values=row) for row in self.db.c.fetchall()] # Удаление данных def delete_records(self): for selection_item in self.tree.selection(): self.db.c.execute('''DELETE FROM autoshop WHERE id=? ''', (self.tree.set(selection_item, '#1'),)) self.db.conn.commit() self.view_records()
Скриншот архива с проектом
Пояснения по запуску программы
Открыть PyCharm, открыть проект Autoshop, нажать вверху на кнопку Run main.
platonlaptev