Вход/Регистрация
Создание настольных Python приложений с графическим интерфейсом пользователя
вернуться

Машнин Тимур Сергеевич

Шрифт:

Создадим метку и методом setAlignment установим ее посередине.

Методом setCentralWidget добавим метку в окно QMainWindow.

В результате после вызова команды fbs run мы увидим окно с меткой.

Более подробно про окно QMainWindow можно посмотреть в

QT

документации.

Теперь, приложениям обычно требуются дополнительные файлы данных помимо исходного кода – например, изображения.

И вот здесь может быть полезен ApplicationContext.

Вы можете поместить ресурсы приложения в папку resources, и чтобы упростить загрузку ресурсов из папки resources, fbs предоставляет метод ApplicationContext.get_resource.

Этот метод принимает имя файла, который можно найти в папке resources, и возвращает абсолютный путь к этому файлу.

И вы можете использовать этот возвращенный абсолютный путь, чтобы открыть файл.

Папка resources должна содержать папку base плюс любую комбинацию других папок.

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

Теперь, далее мы можем использовать fbs, чтобы превратить файл питона в отдельный исполняемый файл.

Для этого в терминале наберем команду fbs freeze.

Эта команда помещает исполняемый двоичный файл в целевую папку текущего каталога.

Далее мы можем создать установщик приложения.

Но для начала мы должны установить NSIS – систему с открытым исходным кодом для создания установщиков Windows.

Также нужно добавить каталог NSIS в переменную среды

Windows

PATH.

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

Далее создадим установщик с помощью команды fbs installer.

Эта команда помещает исполняемый двоичный файл в целевую папку текущего каталога.

Теперь вы можете отправлять его для установки приложения.

Виджеты и компоновки PyQt

Система компоновки Qt предоставляет простой и мощный способ организации дочерних виджетов внутри родительского виджета.

Qt предоставляет набор классов управления компоновкой.

Эти компоновки автоматически позиционируют и изменяют размер виджетов.

И все виджеты Qt могут использовать компоновки для управления своими дочерними элементами с помощью функции setLayout.

Здесь мы с помощью компоновки QHBoxLayout располагаем метки горизонтально в окне QWidget.

Компоновка QVBoxLayout размещает метки вертикально.

Компоновка QGridLayout располагает элементы в сетке.

При этом для каждого элемента можно указать строку, столбец, в которых должен находиться элемент.

Также можно указать затем сколько строк и столбцов должен заполнять элемент.

Компоновка QFormLayout добавляет два виджета в строку, обычно QLabel и QLineEdit для создания форм.

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

Но вы можете вкладывать компоновки в родительскую компоновку с помощью метода addLayout, тогда внутренний макет становится дочерним по отношению к макету, в который он вставлен.

Теперь, модуль Qt Widgets предоставляет набор элементов пользовательского интерфейса для создания пользовательских интерфейсов приложения.

И все, что вы видите в приложении PyQt, представляет собой виджеты: кнопки, метки, окна, диалоговые окна, индикаторы выполнения и т. д.

С меткой мы уже познакомились.

При создании метки, передавая в конструктор в качестве параметра объект окна, мы сообщаем, что метка является частью окна.

  • Читать дальше
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: