Предмет: Информатика, автор: plazmaroma

Программа на Tkinter, Python. В программе будут присутствовать как минимум один текст, два текстовых поля, куда будут вписываться цвета для текста и его заднего фона. При нажатии на кнопку будет происходить смена цвета , который записывается в текстовое поле. Нужна будет кнопка, которая возвращает текст в исходное состояние, а также кнопка для очистки полей ввода и аккуратное расположение объектов при помощи методов place или grid вместо метода pack

Я в вас верю, 100 баллов это максимум.

Ответы

Автор ответа: senchik2288
1

Ответ:Для создания программы на Tkinter, удовлетворяющей данным требованиям, можно использовать следующий код:

import tkinter as tk

class TextColorChanger(tk.Frame):

def __init__(self, master=None):

super().__init__(master)

self.master = master

self.color = tk.StringVar()

self.bg_color = tk.StringVar()

self.create_widgets()

def create_widgets(self):

self.text_label = tk.Label(self, text="Пример текста", font=("Arial", 24))

self.text_label.grid(row=0, column=0, columnspan=2, pady=10)

self.color_label = tk.Label(self, text="Цвет текста:")

self.color_label.grid(row=1, column=0, padx=5, pady=5, sticky="E")

self.color_entry = tk.Entry(self, textvariable=self.color)

self.color_entry.grid(row=1, column=1, padx=5, pady=5, sticky="W")

self.bg_color_label = tk.Label(self, text="Цвет фона:")

self.bg_color_label.grid(row=2, column=0, padx=5, pady=5, sticky="E")

self.bg_color_entry = tk.Entry(self, textvariable=self.bg_color)

self.bg_color_entry.grid(row=2, column=1, padx=5, pady=5, sticky="W")

self.change_button = tk.Button(self, text="Сменить цвет", command=self.change_color)

self.change_button.grid(row=3, column=0, columnspan=2, padx=5, pady=10)

self.reset_button = tk.Button(self, text="Сбросить", command=self.reset_color)

self.reset_button.grid(row=4, column=0, padx=5, pady=10)

self.clear_button = tk.Button(self, text="Очистить", command=self.clear_fields)

self.clear_button.grid(row=4, column=1, padx=5, pady=10)

def change_color(self):

self.text_label.configure(fg=self.color.get(), bg=self.bg_color.get())

def reset_color(self):

self.color.set("")

self.bg_color.set("")

self.text_label.configure(fg="black", bg="white")

def clear_fields(self):

self.color_entry.delete(0, tk.END)

self.bg_color_entry.delete(0, tk.END)

if __name__ == "__main__":

root = tk.Tk()

root.title("Смена цвета текста")

app = TextColorChanger(master=root)

app.grid()

root.mainloop()

Эта программа создает окно, в котором отображается текст, два текстовых поля для ввода цветов текста и фона, кнопка для смены цвета, кнопка для сброса цвета до исходного значения и кнопка для очистки полей ввода. При нажатии на кнопку "Сменить цвет" текст на экране меняется на цвет, который был введен в текстовых полях. При нажатии на кнопку "Сбросить" цвет текста и фона возвращаются к исходным значениям. При нажатии на кнопку "Очистить" поля для ввода цвета текста и фона очищаются.

Объяснение:


plazmaroma: Большое спасибо!
Похожие вопросы
Предмет: Математика, автор: innalyubchenko97