Прикладное программирование
Практика 12
Библиотека Qt: обработчики событий
Для каждой программы, состоящей из нескольких файлов,
создавайте отдельную папку проекта, например project12-1,
project12-2 и т.д., где "12" - номер практического
занятия, 1, 2 и т.д. - номер задания.
Каждую программу, состоящую из одного файла, сохранять
в отдельном файле для каждого упражнения,
например prog12-1, prog12-2 и т.д., где "12" - номер практического
занятия, 1, 2 и т.д. - номер задания.
1. По примеру 14 из лекции создайте приложение с графическим
интерфейсом с применением библиотеки Qt.
Приложение построено на одном модуле исходного кода main.cpp.
Изображение растрового графического фйла открывается в окне приложения.
Файл выбирают с помощью окна диалога QFileDialog, которое появляется
при нажатии на кнопку Open.
2. Выполните рефакторинг (реинжиниринг) приложения проекта gallery02,
создав библиотеку MainWindow.
3. Подключите к проекту из задания 1 библиотеку TCar.
Выполните моделирование движения 3-x автомобилей с применением
класса TCar. Изображения автомобилей должны быть загружены
с помощью окна диалога QFileDialog
из графических файлов в формате PNG с прозрачным фоном.
4. Приведите отношения между идентификатором filePath
и классом MainWindow в соответствие с принципом инкапсуляции, добавьте
методы setFilePath и getFilePath.
5. В проекте при нажатии на кнопку рисуется прямоугольник
с тенью в центре окна. В программе задаются размеры прямоугольника
и ширина тени.
6. В проекте при нажатии на кнопку с помощью цикла рисуется
горизонтальный ряд из N прямоугольников с тенью.
В программе задаются размеры прямоугольника, ширина тени,
расстояние между прямоугольниками по горизонтали.
В поле ввода QLineEdit задают количество N.
7. В проекте при нажатии на кнопку с помощью цикла рисуется
вертикальный ряд из N прямоугольников с тенью.
В программе задаются размеры прямоугольника, ширина тени,
расстояние между прямоугольниками по вертикали.
В поле ввода QLineEdit задают количество N.
8. В проекте при нажатии на кнопку с помощью цикла рисуется
матрица NxM из прямоугольников с тенью: N - столбцов, M - строк.
В программе задаются размеры прямоугольника, ширина тени,
расстояние между прямоугольниками по вертикали и по горизонтали.
В полях ввода QLineEdit задают количество N и M.
9. Напишите программу, которая с помощью циклов выводит
в окно шахматную доску NxM с подписями горизонатльных
и вертикальных рядов числами и латинскими буквами соответственно.
Источники
Основные
- Юркин А. Г.
Задачник по программированию. — СПб.: Питер, 2002. — 192 с.
- Поляков К. Ю., Шестаков А. П., Еремин Е. А. Объектноориентированное
программирование // Информатика. — 2011. — N13. — С. 22-45.