Задание
С помощью языка Python и библиотеки Tkinter реализовать простое приложение для ипподрома. Приложение должно позволять вести учет жокеев, их резульатов в скачках и ставок которые были сделаны.
Функционал программы
- Добавление жокея
- Редактирование данных
- Удаление данных
- поиск записей в БД
Фрагмент программного кода
import tkinter as tk
from tkinter import ttk
import sqlite3
from PIL import ImageTk
# Класс Main
def open_update_dialog():
Update()
class Main(tk.Frame):
def __init__(self, root):
super().__init__(root)
self.tree = None
self.refresh_img = ImageTk.PhotoImage(file='refresh.png')
self.search_img = ImageTk.PhotoImage(file='search.png')
self.delete_img = ImageTk.PhotoImage(file='delete.png')
self.update_img = ImageTk.PhotoImage(file='edit.png')
self.add_img = ImageTk.PhotoImage(file='add.png')
self.init_main()
self.db = db
self.view_records()
# Главное окно
def init_main(self):
title_label = tk.Label(root, text="Ипподром", font=("Arial", 15, "bold"),
border=12, relief=tk.GROOVE, bg="blue", foreground="yellow")
title_label.pack(side=tk.TOP, fill=tk.X)
toolbar = tk.Frame(bg='beige', bd=2)
toolbar.pack(side=tk.TOP, fill=tk.X)
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)
btn_edit_dialog = tk.Button(toolbar, text='Редактировать', bg='beige', bd=0, image=self.update_img,
compound=tk.TOP, command=open_update_dialog)
btn_edit_dialog.pack(side=tk.LEFT)
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)
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)
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)
columns = ('ID', 'jockey', 'result', 'bet')
self.tree = ttk.Treeview(self, columns=columns, height=15, show='headings')
self.tree.column('ID', width=30, anchor=tk.CENTER)
self.tree.column('jockey', width=365, anchor=tk.CENTER)
self.tree.column('result', width=120, anchor=tk.CENTER)
self.tree.column('bet', width=110, anchor=tk.CENTER)
self.tree.heading('ID', text='ID')
self.tree.heading('jockey', text='Жокей')
self.tree.heading('result', text='Результат')
self.tree.heading('bet', 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)
Скриншот архива с проектом

Пояснения по запуску программы
Скачать PyCharm с оффициального сайта и установить. Открыть проект, запустить код из файла main.py с помощью кнопки Run.
Телеграм
-