Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - PyQt - Дизайнер графического интерфейса пользователя31 мая 2011Оглавление: 1. PyQt 2. Обзор основных модулей 3. Дизайнер графического интерфейса пользователя 4. SIP 5. Особенности лицензирования 6. История 7. Применение Qt Designer является мощным кросс-платформенным компоновщиком макетов и форм графического интерфейса пользователя. Он позволяет быстро спроектировать виджеты и диалоги, используя экранные формы с использованием тех же виджетов, которые будут использоваться в приложении. Формы, созданные с Qt Designer являются полностью функциональными, и они могут быть просмотрены, чтобы можно было убедиться, что они будут выглядеть и вести себя точно так, как вы хотели. Примеры программПрограмма Hello, world!Стандартный минималистичный пример, дающий представление о PyQt. Программа показывает пустое окно, обладающее базовыми функциями — изменение размера, сворачивание, разворачивание:
Более сложный примерВ этом примере показаны принципы создания более серьёзных программ. Используется Python 3 и Qt Designer. Применяется объектно-ориентированный подход, позволяющий разделить визуальное представление и логику программы. Состав программы:
Содержание файла test.pyw: #! /usr/bin/env python3 # import sys from PyQt4 import QtCore, QtGui # подключает основные модули PyQt import mainform # подключает модуль описания формы def main: app = QtGui.QApplication # создаёт основной объект программы form = mainform.MainForm # создаёт объект формы form.show # даёт команду на отображение объекта формы и содержимого app.exec # запускает приложение if __name__ == "__main__": sys.exit) Содержание файла mainform.py: #! /usr/bin/env python3 # from PyQt4 import QtCore, QtGui, uic # подключает основные модули PyQt # прототип главной формы class MainForm: # конструктор def __init__: super.__init__ # динамически загружает визуальное представление формы uic.loadUi # связывает событие нажатия на кнопку с методом self.connect"), self.setLabelText) def setLabelText: self.label.setText В этом примере довольно простая функциональность, представленная методом setLabelText. Однако при необходимости реализовать более сложную обработку поступающих данных, целесообразно вынести эту обработку в отдельный модуль. Просмотров: 7801
|