Введение в программирование с использованием библиотеки Qt.

Презентация:



Advertisements
Похожие презентации
Операционная система. 1.Общее понятие операционных системОбщее понятие операционных систем 2.Классификация ОСКлассификация ОС 3.Обзор наиболее популярных.
Advertisements

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА Ключевые слова программа программное обеспечение (ПО) системное ПО прикладное ПО система программирования.
Операционная система Windows. Windows – графическая операционная система для компьютеров платформы IBM PC Предназначена для управления автономным компьютером.
Подготовила: Бовина Елена М-063. это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих одинаковым набором.
Учитель информатики Трашков О.Л.. Обработка информации в компьютере и управление всеми его устройствами осуществляется с помощью программ. Компьютер представляет.
Подготовила: Бовина Елена М-063. это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих одинаковым набором.
ОПЕРАИОННАЯ СИСТЕМА. Операционная система комплекс программ, обеспечивающий управление аппаратными средствами компьютера, организующий работу с файлами.
Понятие об операционной системе (ОС). Что происходит сразу после включения питания ПК? При включении питания процессор обращается в микросхему ПЗУ (постоянное.
Windows поддерживает современное оборудование и обеспечивает пользователю удобные правила работы.
Можно ли персональный компьютер рассматривать как систему?
Операционные системы. Выполнила студентка группы МОЦИ -306 Большешапова Елизавета.
Домашнее задание (от ) § 2.2 1, 5. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА КОМПЬЮТЕР КАК УНИВЕСАЛЬНОЕ УСТРОЙСТВО ДЛЯ РАБОТЫ С ИНФОРМАЦИЕЙ Информатика.
Интегрированная информационная система «КВАРТА». Компания КВАРТА Компания КВАРТА имеет 14-летний опыт работы в следующих областях: Реализация «под ключ»
ОПЕРАЦИОННАЯ СИСТЕМА Операционная система обеспечивает совместное функционирование всех устройств компьютера и предоставляет пользователю доступ к его.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА КОМПЬЮТЕР КАК УНИВЕСАЛЬНОЕ УСТРОЙСТВО ДЛЯ РАБОТЫ С ИНФОРМАЦИЕЙ Информатика и ИКТ.
Курсовая работа по WINDOWS Битов Герман, 2-я группа.
Понятие об операционной системе (ОС). Что происходит сразу после включения питания ПК? При включении питания процессор обращается в микросхему ПЗУ (постоянное.
Начать тест 11 класс, физико-математический профиль.
cvb
Основы объектно-ориентированного программирования (ООП)
Транксрипт:

Введение в программирование с использованием библиотеки Qt

История 1994 – основана компания Trolltech, разработаны версии под Unix и Windows 1997 – библиотека Qt 1.2 легла в основу среды KDE 2000 – Qtopia Core (затем Qt/Embedded) для Embedded Linux 2001 – вышла Qt 3.0 для Unix, Linux, Mac и Windows 2005 – Qt – Trolltech Nokia

Примеры приложений KDE Skype Google Earth

Поддерживаемые платформы Unix, Linux (десктопные и мобильные версии с графической подсистемой X11) Windows XP, Vista, 7 Windows Mobile Mac OS X Android iOS (в процессе портирования)

Поддерживаемые языки C++ - язык самой библиотеки Python Ruby Java PHP

Модули библиотеки QtCore QtGui QtNetwork QtOpenGL QtSql QtXml QtMultimedia QtTest

Модуль QtCore контейнерные классы QVector,QList,QMap классы ввода-вывода QIODevice, QFile, QDataStream классы для работы с потоками и процесами QProcess, QThread, QMutex, QSemaphore классы для работы с датой и временем QDate, QTime, QDateTime QLocale QEvent QObject

Объектная модель Qt Объекты образуют иерархию по принципу родитель-ребенок Объект содержит всю информацию о себе Объекты соединяются с помощью механизма слотов-сигналов Объекты обрабатывают события Объекты обладают свойствами //pr1

Правила соединения сигналов и слотов Отношения многие ко многим Можно соединять сигнал с сигналом Количество аргументов слота

Рекомендации по использованию объектной модели не использовать иерархию объектов для доступа к защищенным полям класса не использовать сигналы и слоты в местах, где критична производительность использовать qobject_cast для преобразования типов указателей на объекты

Контейнерные классы Последовательные – вектор (QVector), список (QList и QLinkedList), стек (QStack) и очередь (QQueue) Ассоциативные – множество (QSet), словарь (QMap и QMultiMap), хэш (QHash и QMultiHash)

Работа с контейнерными классами по индексу для последовательных контейнеров по ключу для ассоциативных контейнеров итераторы в стиле Java и C++ foreach ! при входе в цикл происходит копирование всего контейнера

Устройства ввода-вывода Файл Сокет Буфер Процесс

Обработка сообщений QCoreApplication::exec() QThread::exec() QEventLoop::exec()

Графический интерфейс пользователя в Qt Базовый класс – QWidget, наследник QObject и класса QPaintDevice QPaintDevice - холст для рисования Основные задачи класса QWidget управление геометрией обработка событий графической системы управление поведением окна с помощью флагов изменение курсора Каждый виджет может быть окном

Ограничение графической подсистемы Нельзя производить непосредственное взаимодействие с виджетом из другого потока. Нужно: использовать слот-сигнальные соединения использовать пользовательские события

Наиболее интересные библиотечные виджеты QMainWindow QDialog QFrame QStackedWidget QScrollArea

События События клавиатуры События мыши События перерисовки События таймера События перетаскивания

Управление обработкой событий qApp->sendEvent() и qApp->postEvent() qApp->processEvents() QObject::installEventFilter()

Контекст рисования QPainter QPaintEngine QPaintDevice QWidget QImage, QPixmap, QBitmap, QGLPixelBuffer QPicture QPrinter

Перья и кисти Перо (QPen) – определяет цвет и стиль линий Кисть (QBrush) – определяет цвет и стиль заполнения контуров //pr2

Градиенты Линейный, конический и радиальный градиенты (QLinearGradient, QConicalGradient и QRadialGradient) градиенты можно устанавливать в качестве кистей

Управление размещением виджетов QLayout QVBoxLayout, QHBoxLayout, QGridLayout, QStackedLayout //pr4

Концепция модель- представление модель представление выделение делегат

Модели QAbstractItemModel – иерархия таблиц QAbstractListModel QStringListModel QDirModel QAbstractProxyModel QSortFilterProxyModel QStandartItemModel QAbstractTableModel QSqlQueryModel QSqlTableModel QSqlRelationalTableModel

Представления QAbstractItemView QHeaderView QListView QTableView QTreeView

Использование OpenGL в Qt QGLWidget – автоматически активируется аппаратное ускорение 2d графики в paintEvent //pr5

Использование механизма widget-controller причина использования – возможность удаления виджета механизм использование QPointer в контроллере определение операции widget() в контроллере //pr6

Внутренние ресурсы Qt Файл.qrc Q_INIT_RESOURCE путь начинается с :/ //pr7

Источники информации 1. Макс Шлее. Qt4. Профессиональное программирование на C++ Документация