Необходимы изменения в прикладном ПО бота для добавления функции поиска комплектации по номеру. Ожидается возможность выбора типа детали и указания количества операций. Требуется проработка логики поиска и интерфейса для пользователей.
Доработать готовый код
Я написал код на Python с помощью чат-бота GPT. Суть кода заключается в сравнении чисел для статистики. В первом меню вводится первое число, во втором меню - второе число, и я сохраняю результат, нажав на кнопку. Если первое число больше второго, цвет будет зеленым. Если второе число больше первого, цвет будет красным. Если числа равны, цвет будет желтым. Эта часть кода уже сделана, так что при открытии кода все будет понятно.
Однако, осталось реализовать статистику. В данный момент, когда я нажимаю кнопку сохранить, сохраняется только один цвет. Но мне нужно, чтобы было 500-800 квадратиков слева с сохранением цвета и соответствующая статистика справа. Это несложная задача, но трудно объяснить. Пожалуйста, исправьте ошибки в коде и помогите реализовать статистику.не могу прикрипить файл в таком формате не поддерживается так что вот код:
import tkinter as tk
from datetime import datetime
def update_color1(*args):
num1 = get_number(entry1.get())
num2 = get_number(entry2.get())
if num1 is not None and num2 is not None:
if num1 > num2:
color1 = "green"
elif num2 > num1:
color1 = "red"
else:
color1 = "yellow"
else:
color1 = "white"
label_color1.config(bg=color1)
def update_color2(*args):
num3 = get_number(entry3.get())
num4 = get_number(entry4.get())
if num3 is not None and num4 is not None:
if num3 > num4:
color2 = "green"
elif num4 > num3:
color2 = "red"
else:
color2 = "yellow"
else:
color2 = "white"
label_color2.config(bg=color2)
def update_time():
current_time = datetime.now().strftime("%H:%M:%S")
time_label.config(text=current_time, font=("Courier", 25, "bold"))
time_label.after(1000, update_time)
def paste_numbers(event):
clipboard_data = root.clipboard_get().strip()
focused_entry = root.focus_get()
if focused_entry == entry1:
num = get_number(clipboard_data)
if num is not None:
entry1.delete(0, tk.END)
entry1.insert(0, format_number(num))
elif focused_entry == entry2:
num = get_number(clipboard_data)
if num is not None:
entry2.delete(0, tk.END)
entry2.insert(0, format_number(num))
elif focused_entry == entry3:
num = get_number(clipboard_data)
if num is not None:
entry3.delete(0, tk.END)
entry3.insert(0, format_number(num))
elif focused_entry == entry4:
num = get_number(clipboard_data)
if num is not None:
entry4.delete(0, tk.END)
entry4.insert(0, format_number(num))
def get_number(value):
try:
return float(value)
except ValueError:
return None
def format_number(num):
if num.is_integer():
return str(int(num))
else:
return str(num)
def save_color1():
color = label_color1.cget("bg")
stat_label1.config(bg=color)
def save_color2():
color = label_color2.cget("bg")
stat_label2.config(bg=color)
root = tk.Tk()
root.title("Окно с числами и цветом")
root.geometry("500x400")
frame1 = tk.Frame(root)
frame1.pack(side=tk.LEFT, padx=20, pady=20, anchor="n")
frame2 = tk.Frame(root)
frame2.pack(side=tk.LEFT, padx=20, pady=20, anchor="n")
label1 = tk.Label(frame1, text="Первое число:")
label1.pack()
entry1 = tk.Entry(frame1)
entry1.pack()
label2 = tk.Label(frame1, text="Второе число:")
label2.pack()
entry2 = tk.Entry(frame1)
entry2.pack()
button_save_color1 = tk.Button(frame1, text="Сохранить цвет", command=save_color1)
button_save_color1.pack()
label3 = tk.Label(frame2, text="Третье число:")
label3.pack()
entry3 = tk.Entry(frame2)
entry3.pack()
label4 = tk.Label(frame2, text="Четвертое число:")
label4.pack()
entry4 = tk.Entry(frame2)
entry4.pack()
button_save_color2 = tk.Button(frame2, text="Сохранить цвет", command=save_color2)
button_save_color2.pack()
color_frame = tk.Frame(root)
color_frame.pack(side=tk.BOTTOM, pady=20)
label_color1 = tk.Label(color_frame, bg="white", width=10, height=5)
label_color1.pack(side=tk.LEFT, padx=10)
label_color2 = tk.Label(color_frame, bg="white", width=10, height=5)
label_color2.pack(side=tk.LEFT, padx=10)
stat_frame = tk.Frame(root)
stat_frame.pack(side=tk.BOTTOM, pady=10)
stat_label1 = tk.Label(stat_frame, bg="white", width=10, height=5)
stat_label1.pack(side=tk.LEFT, padx=10)
stat_label2 = tk.Label(stat_frame, bg="white", width=10, height=5)
stat_label2.pack(side=tk.LEFT, padx=10)
time_label = tk.Label(root, text="", font=("Courier", 25, "bold"))
time_label.pack(side=tk.TOP, pady=20)
entry1.bind("", update_color1)
entry2.bind("", update_color1)
entry3.bind("", update_color2)
entry4.bind("", update_color2)
update_time()
root.bind("", paste_numbers)
root.mainloop()
Заявки фрилансеров
Похожие заказы
- Прикладное ПО1 исполнительЗавершен2 года назад
Ищется Python программист для разработки прикладного ПО. Необходим опыт работы с фреймворком Django, базой данных PostgreSQL и интеграцией API. Ожидается выполнение качественной работы с учетом всех требований.
Прикладное ПО7 заявокЗакрыт2 года назад- $201
Требуется парсинг всех карточек компаний с сайта clutch.co и экспорт данных в Google Spreadsheet с разбивкой по ячейкам. Можно использовать существующие решения, такие как проект на GitHub или Apify. Оплата возможна по факту выполнения или через безопасную сделку.
Прикладное ПО4 заявкиЗакрыт2 года назад Необходимо реализовать автоматическую смену даты в шаблоне документа Word. При вводе даты в одном месте, в другом месте должна вставляться следующая дата. Например, при вводе 01.01.23, в другом месте автоматически вставляется 02.01.23.
Прикладное ПО2 заявкиЗакрыт2 года назадТребуется разработать приложение манометра со звуковой сигнализацией на Delphi 7 для Windows 7/8/10/11. Программа должна управлять давлением, динамически изменять звук и отображение манометра. Необходимо обеспечить загрузку графики и звуков из файлов, а также сохранять данные в INI. Программа должна работать на 64-разрядной ОС и поддерживать масштабирование.
Прикладное ПО2 заявкиЗакрыт2 года назадТребуется доработка программы на C#, добавление функций прокси-сервера для обработки HTTP-запросов. Необходим опыт работы с сетевым программированием и знание принципов прокси-технологий.
Прикладное ПО3 заявкиЗакрыт2 года назад- $30
Необходимо разработать парсер данных, который будет собирать информацию и выгружать результаты в Telegram-канал или бота. Укажите технологии и подходы, которые планируете использовать для реализации проекта.
Прикладное ПО4 заявкиЗакрыт2 года назад Створити програму на C# для організації сенсорних вузлів у єдину топологічну структуру мережі з максимальною швидкістю передачі даних. Реалізувати графічний інтерфейс для відображення графіків залежності швидкості передачі від кількості вузлів та розміру покриття. Надати блок-схему алгоритму та інструкцію для користувача.
Прикладное ПОнет заявокЗакрыт2 года назадТребуется создать приложение для ОС Windows с возможностью авторизации по логину и паролю. Реализовать функцию drag and drop для расстановки событий в расписании и изменения количества срок и столбцов. Приложение должно отображать события в режиме реального времени.
Прикладное ПО3 заявкиЗакрыт2 года назадНеобходимо выполнить выборку данных с сайта 'Статистика' по объемам и стоимости генерации энергии, а также валовому доходу сетевых платформ и банковской системы по ведущим странам мира. Анализ должен охватывать не менее 90% мирового объема и ВВП. Программно проанализировать характер взаимосвязи между данными.
Прикладное ПО1 заявкаЗакрыт2 года назад