Создание собственной программы с помощью tkinter в Python

Прокрутить вниз

Создание собственной программы с помощью tkinter в Python может быть интересным и полезным проектом. В этом примере мы рассмотрим процесс создания простой программы для записи и отображения заметок.

Шаг 1: Импорт модуля tkinter

Сначала импортируем модуль `tkinter` и создадим основное окно программы.

import tkinter as tk

root = tk.Tk()
root.title(«Простое приложение для заметок»)
root.geometry(«400×400»)

Шаг 2: Создание виджетов

Теперь создадим необходимые виджеты для нашего приложения. Это будут поле ввода (Entry) для заголовка заметки, текстовая область (Text) для самого текста заметки, кнопка для сохранения заметки и список для отображения сохраненных заметок.

title_label = tk.Label(root, text=»Заголовок заметки»)
title_label.pack()

title_entry = tk.Entry(root, width=50)
title_entry.pack(pady=5)

text_label = tk.Label(root, text=»Текст заметки»)
text_label.pack()

text_area = tk.Text(root, height=10, width=50)
text_area.pack(pady=5)

save_button = tk.Button(root, text=»Сохранить заметку», command=lambda: save_note())
save_button.pack(pady=10)

notes_list_label = tk.Label(root, text=»Сохраненные заметки»)
notes_list_label.pack()

notes_listbox = tk.Listbox(root, width=50, height=10)
notes_listbox.pack(pady=5)

Шаг 3: Функция для сохранения заметки

Теперь напишем функцию `save_note`, которая будет сохранять заголовок и текст заметки, добавлять заголовок в список и очищать поля ввода.

notes = []

def save_note():
title = title_entry.get()
text = text_area.get(«1.0», tk.END).strip()

if title and text:
notes.append({«title»: title, «text»: text})
notes_listbox.insert(tk.END, title)

title_entry.delete(0, tk.END)
text_area.delete(«1.0», tk.END)

Шаг 4: Функция для отображения выбранной заметки

Чтобы пользователь мог просматривать сохраненные заметки, добавим функцию, отображающую текст заметки, когда пользователь выбирает ее из списка.

def show_note(event):
selected_index = notes_listbox.curselection()
if selected_index:
note = notes[selected_index[0]]
text_area.delete(«1.0», tk.END)
text_area.insert(tk.END, note[«text»])

notes_listbox.bind(«<<ListboxSelect>>», show_note)

Шаг 5: Запуск главного цикла приложения

Последний шаг является запуск главного цикла программы, чтобы отобразить наше окно.

root.mainloop()

Полный код приложения

import tkinter as tk

  • Создание главного окна
    root = tk.Tk()
    root.title(«Простое приложение для заметок»)
    root.geometry(«400×400»)
  • Виджеты
    title_label = tk.Label(root, text=»Заголовок заметки»)
    title_label.pack()

title_entry = tk.Entry(root, width=50)
title_entry.pack(pady=5)

text_label = tk.Label(root, text=»Текст заметки»)
text_label.pack()

text_area = tk.Text(root, height=10, width=50)
text_area.pack(pady=5)

save_button = tk.Button(root, text=»Сохранить заметку», command=lambda: save_note())
save_button.pack(pady=10)

notes_list_label = tk.Label(root, text=»Сохраненные заметки»)
notes_list_label.pack()

notes_listbox = tk.Listbox(root, width=50, height=10)
notes_listbox.pack(pady=5)

  • Сохраненные заметки
    notes = []
  •  Функция для сохранения заметки
    def save_note():
    title = title_entry.get()
    text = text_area.get(«1.0», tk.END).strip()

if title and text:
notes.append({«title»: title, «text»: text})
notes_listbox.insert(tk.END, title)

title_entry.delete(0, tk.END)
text_area.delete(«1.0», tk.END)

  • Функция для отображения заметки
    def show_note(event):
    selected_index = notes_listbox.curselection()
    if selected_index:
    note = notes[selected_index[0]]
    text_area.delete(«1.0», tk.END)
    text_area.insert(tk.END, note[«text»])
  • Привязка события выбора заметки к функции отображения
    notes_listbox.bind(«<<ListboxSelect>>», show_note)
  • Запуск главного цикла программы
    root.mainloop()

Тест Python. Создание собственного приложения с помощью tkinter модуля. (1)

Заключение: Создание собственной программы с помощью tkinter в Python

Этот пример показывает, как можно сделать простое приложение для сохранения и отображения заметок с помощью модуля `tkinter`. Приложение позволяет вводить заголовки и тексты заметок, сохранять их и просматривать в любой момент. Это базовый проект, который можно расширять и усовершенствовать в соответствии с вашими потребностями.