Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ShPORY.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
277 Кб
Скачать
☆

52 Программирование интерфейсов. Библиотека qt. Структура программы на qt.

Qt (произносится [ˈkjuːt] (кьют) как «cute»[7] или неофициально Q-T (кью-ти)) — кроссплатформенный инструментарий разработки ПО на языке программирования C++. Есть также «привязки» ко многим другим языкам программирования: Python — PyQt, PySide; Ruby — QtRuby[8]; Java — Qt Jambi[9]; PHP — PHP-Qt и другие.

Qt позволяет запускать написанное с его помощью ПО в большинстве современных операционных систем путём простой компиляции программы для каждой ОС без изменения исходного кода. Включает в себя все основные классы, которые могут потребоваться при разработке прикладного программного обеспечения, начиная от элементов графического интерфейса и заканчивая классами для работы с сетью, базами данных и XML. Qt является полностью объектно-ориентированным, легко расширяемым и поддерживающим технику компонентного программирования.Отличительная особенность Qt от других библиотек — использование Meta Object Compiler (MOC) — предварительной системы обработки исходного кода. MOC позволяет во много раз увеличить мощь библиотек, вводя такие понятия, как слоты и сигналы. Кроме того, это позволяет сделать код более лаконичным. Утилита MOC ищет в заголовочных файлах на C++ описания классов, содержащие макрос Q_OBJECT, и создаёт дополнительный исходный файл на C++, содержащий метаобъектный код.

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

Qt комплектуется визуальной средой разработки графического интерфейса «Qt Designer», позволяющей создавать диалоги и формы в режиме WYSIWYG. В поставке Qt есть «Qt Linguist» — графическая утилита, позволяющая упростить локализацию и перевод программы на многие языки; и «Qt Assistant» — справочная система Qt, упрощающая работу с документацией по библиотеке, а также позволяющая создавать кросс-платформенную справку для разрабатываемого на основе Qt ПО. Начиная с версии 4.5.0 в комплект Qt включена среда разработки «Qt Creator», которая включает в себя редактор кода, справку, графические средства «Qt Designer» и возможность отладки приложений. «Qt Creator» может использовать GCC или Microsoft VC++ в качестве компилятора и GDB в качестве отладчика. Для Windows версий библиотека комплектуется компилятором, заголовочными и объектными файлами MinGW.

В первом, самом простом приложении, должно быть 4 файла исходных кодов.

main.cpp

MainWindow.h

MainWindow.cpp

MainWindow.ui

// MainWindow.h class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget * parent = 0); ~MainWindow(); signals: protected: private: Ui::MainWindow * ui; };

3. Если количество элементов в MainWindow становится слишком большим, выделяйте элементы в отдельные классы, наследники класса QWidget.

Допустим, у вас в MainWindow расположен элемент Tab Widget, в котором 2 вкладки.

Логично вынести логику работы элементов в каждой вкладке в свой класс, т.е. у вас в проекте должно появиться еще 6 файлов:

MyTabWidget1.h

MyTabWidget1.cpp

MyTabWidget1.ui

MyTabWidget2.h

MyTabWidget2.cpp

MyTabWidget2.ui

// MyTabWidget1.h #pragma once #include <QWidget> namespace Ui { class MyTabWidget1; } class MyTabWidget1: public QWidget { Q_OBJECT public: explicit MyTabWidget1(QWidget * parent = 0); ~MyTabWidget1(); private: Ui::MyTabWidget1* ui; };

В классе MainWindow используются объекты классов MyTabWidget1 и MyTabWidget2.

97

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]