Розмісти у вікні два списки Listbox. У першому буде перелік товарів, заданий програмно. Другий спочатку порожній, нехай це буде перелік покупок. При кліці на одну кнопку товар повинен переходити з одного списку в інший. При кліці на другу кнопку – повертатися.
Підказка: для того щоб дізнатися який елемент обрано в першому списку, та для видалення у першому й додавання у другий використовуйте конструкцію
lbox2.insert(END, lbox1.get(lbox1.curselection()))
lbox1.delete(lbox1.curselection())
кодом в пайтон
Ответы
Ответ:
import tkinter as tk
from tkinter import ttk
def add_to_cart():
selected_product = products_listbox.curselection()
if selected_product:
product = products_listbox.get(selected_product)
products_listbox.delete(selected_product)
shopping_listbox.insert(tk.END, product)
def remove_from_cart():
selected_product = shopping_listbox.curselection()
if selected_product:
product = shopping_listbox.get(selected_product)
shopping_listbox.delete(selected_product)
products_listbox.insert(tk.END, product)
root = tk.Tk()
root.attributes('-fullscreen', True)
products_listbox = tk.Listbox(root, width=50, height=40, font=("Helvetica", 16))
products_listbox.pack(side=tk.LEFT, padx=20, pady=20)
shopping_listbox = tk.Listbox(root, width=50, height=40, font=("Helvetica", 16))
shopping_listbox.pack(side=tk.LEFT, padx=20, pady=20)
products = ["Яблоко", "Банан", "Апельсин", "Груша", "Персик", "Ананас", "Киви"]
for product in products:
products_listbox.insert(tk.END, product)
button_frame = ttk.Frame(root)
button_frame.pack(side=tk.LEFT, padx=20, pady=20)
add_button = ttk.Button(button_frame, text="Добавить в корзину", command=add_to_cart)
add_button.pack(pady=10)
remove_button = ttk.Button(button_frame, text="Удалить из корзины", command=remove_from_cart)
remove_button.pack(pady=10)
def exit_app():
root.destroy()
def unfullscreen():
root.attributes('-fullscreen', False)
exit_button = ttk.Button(button_frame, text="Выйти", command=exit_app)
exit_button.pack(pady=10)
unfullscreen_button = ttk.Button(button_frame, text="Свернуть", command=unfullscreen)
unfullscreen_button.pack(pady=10)
root.mainloop()
Объяснение: