<MyRusakov.ru />

Создание игр на Unreal Engine 5

Создание игр на Unreal Engine 5

Данный курс научит Вас созданию игр на Unreal Engine 5. Курс состоит из 12 модулей, в которых Вы с нуля освоите этот движок и сможете создавать самые разные игры.

В курсе Вы получите всю необходимую теоретическую часть, а также увидите массу практических примеров. Дополнительно, почти к каждому уроку идут упражнения для закрепления материала.

Помимо самого курса Вас ждёт ещё 8 бесплатных ценных Бонусов: «Chaos Destruction», «Разработка 2D-игры», «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства», «Создание прототипа RPG с открытым миром» и и весь курс «Создание игр на Unreal Engine 4» (актуальный и в 5-й версии), включающий в себя ещё десятки часов видеоуроков.

Подробнее
Подписка

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

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Передача данных между окнами c Python и Tkinter

Передача данных между окнами c Python и Tkinter

Приветствую! Сегодня мы поговорим о том, как организовать передачу данных между окнами в Tkinter. Этот подход полезен для создания приложений, где одно окно отвечает за ввод данных, а другое — за их отображение или обработку.

Задача

Допустим, вы разрабатываете приложение, где пользователь вводит текст в одном окне (главном меню), а в другом окне (настройках) видит этот текст. Такой функционал можно реализовать с помощью функций и обновления элементов интерфейса.

Полный код с объяснениями

import tkinter as tk

# Функция для открытия окна настроек
def open_settings():
    """Открыть окно настроек и передать данные"""
    user_text = entry.get()  # Получаем текст, введённый пользователем в главном окне
    settings_label.config(text=f"Ваш текст: {user_text}")  # Обновляем метку в окне настроек
    main_window.withdraw()  # Скрываем главное окно
    settings_window.deiconify()  # Показываем окно настроек

# Функция для возврата в главное меню
def back_to_main():
    """Вернуться в главное меню"""
    settings_window.withdraw()  # Скрываем окно настроек
    main_window.deiconify()  # Показываем главное окно

# Главное окно
main_window = tk.Tk()  # Инициализируем главное окно
main_window.title("Главное меню")  # Устанавливаем заголовок
main_window.geometry("300x200")  # Устанавливаем размеры окна

# Добавляем элементы интерфейса в главное меню
main_label = tk.Label(main_window, text="Введите текст:")  # Метка с пояснением
main_label.pack(pady=10)  # Размещаем её с отступом

entry = tk.Entry(main_window)  # Поле для ввода текста
entry.pack(pady=5)  # Поле с небольшим отступом

settings_button = tk.Button(main_window, text="Настройки", command=open_settings)  # Кнопка "Настройки"
settings_button.pack(pady=10)  # Размещаем кнопку

# Окно настроек
settings_window = tk.Toplevel(main_window)  # Создаём окно, связанное с главным
settings_window.title("Настройки")  # Заголовок окна
settings_window.geometry("300x200")  # Размеры окна
settings_window.withdraw()  # Прячем окно настроек при старте

# Элементы в окне настроек
settings_label = tk.Label(settings_window, text="Ваш текст: ")  # Метка для отображения текста
settings_label.pack(pady=20)  # Размещаем метку

back_button = tk.Button(settings_window, text="Назад", command=back_to_main)  # Кнопка "Назад"
back_button.pack(pady=10)  # Размещаем кнопку

main_window.mainloop()  # Запуск основного цикла приложения

Как можно улучшить?

  1. Добавить валидацию
  2. Проверять, что пользователь ввёл текст, и выводить сообщение, если поле ввода пустое.

  3. Использовать глобальный объект для данных

  4. Если вы передаёте данные между несколькими окнами, удобно использовать словарь или объект для хранения данных.

  5. Динамическое обновление

  6. Добавить возможность обновлять текст в реальном времени, используя события, такие как KeyRelease.

Вывод

Передача данных между окнами в Tkinter — это просто! Используя методы get и config, вы можете создавать приложения с динамическим обменом данными. Если у вас есть вопросы или идеи для реализации, делитесь!

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.