- •Оглавление
- •Введение
- •Глава 1
- •Использование компонентов общего назначения: tLabel, tButton, tEdit, tShape, tTimer, tPanel
- •1.1.1. Проект «Калькулятор»
- •1.1.2. Проект «Таймер»
- •1.1.3. Проект «Светофор»
- •1.1.4. Проект «Движение шарика tShape с отражением»
- •Глава 2
- •2.1. Класс tCanvas, его свойства и методы
- •2.1.1. Рисование узоров
- •2.1.2. Рисование поля для различных игр
- •2.1.3. Рисование координатной сетки
- •2.1.4. Построение графиков элементарных функций
- •2.2. Класс tBitmap и работа с растровыми рисунками
- •2.2.1. Рисование на поле растрового рисунка
- •2.2.2. Движение двоичного образа по фоновой картинке
- •2.3. Компонент tImage и его использование
- •2.3.1. Проект «Движение компонента tImage»
- •2.3.2. Перемещение картинок
- •2.3.3. Проект «Движение компонента tImage
- •Глава 3
- •3.1. События от мыши
- •3.1.1. Проект «Попади в мишень»
- •3.1.2. Проект «Снежинки»
- •3.1.3. Проект «Крестики-нолики»
- •3.1.4. Движение образа по удерживанию левой кнопки мыши
- •3.1.5. Проект «Жизнь клеток»
- •3.2. События от клавиатуры
- •3.2.1. Код клавиши
- •3.2.2. Управляемое движение образа
- •3.2.3. Совмещение управляемого и неуправляемого движений.
- •Глава 4
- •4.1. Проект «Простейший графический редактор»
- •Глава 5
- •5.1. Создание кнопок
- •5.1.1. Проект «Лохотрон»
- •5.1.2. Игра «Пятнадцать»
- •5.2. Создание компонентов tImage
- •5.2.1. Проект «Угадай картинку»
- •5.2.2. Проект «Собери картинку»
- •Глава 6
- •6.1. Компоненты tStringGrid и tDrawGrid
- •6.1.1. Сортировка массива
- •6.1.2. Проект «Таблица успеваемости»
- •6.1.3. Система предварительной продажи билетов
- •6.1.4. Проект «Таблица рисунков»
- •6.1.5. Рисование в таблице tDrawGrid
- •6.2. Компоненты tListBox, tCombobox ,
- •6.2.1. Прорисовка изображений в списке tListBox
- •6.2.2. Проект «Зоомагазин»
- •6.2.3. Проект «Шуточная игра»
- •6.2.4. Проект «Редактирование списка вопросов»
- •Глава 7
- •7.1. Тест «Знаете ли вы загадки?»
- •7.2. Проект «Исторические даты»
- •Глава 8
- •8.1. Компоненты tOpenDialog, tSaveDialog – диалоги
- •8.1.1. Просмотр текстовых файлов
- •8.2. Добавление и удаление записей в файл и из файла
- •8.2.1. Проект «Журнал группы»
- •8.3. Файлы для проекта «Судоку»
- •Глава 9
- •9.1. Просмотр видеофильма с использованием
- •9.2. Простейшая мультипликация
- •Глава 10
- •10.1. Пример использования try… except
- •Глава 11
- •11.1. Оформление проекта
- •11.1.1. Проект «Бегущая строка»
- •11.1.2. Проект «Титры»
- •11.1.3. Общие рекомендации по оформлению
- •11.2. Рекомендации для отчета по проекту
- •11.3. Темы проектов
- •11.3.1. Головоломка «Сквэрворд»
- •11.3.2. Задача «Путешествие по маршруту»
- •11.3.3. Головоломка «Ходом коня»
- •11.3.4. Задача «Извилистый путь»
- •11.3.5. Головоломка «Фишки на поле»
- •Список литературы
- •630058, Новосибирск, ул. Русская, 35
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
Новосибирский государственный университет
Высший колледж информатикИ
Задачи для изучения основ Delphi
Учебное пособие
Новосибирск
2011
УДК 681.3.06(075)
ББК 32.973–01Я73
К 72
Задачи для изучения основ Delphi. :Учебное пособие /
М. А. Держо, Н. Е. Календарева, С. Т. Календарева, Н. Ю. Карпунина,
О. П. Козлова, Л. К. Попов, О. С. Ухинова. ВКИ НГУ. Новосибирск, 2011. – 136 с.
ISBN 978-5-4437-0004-5
Целью данного учебного пособия является обучение основам программирования с использованием возможностей среды Delphi.
Пособие предназначено как для новичков, осваивающих азы программирования, так и для студентов, продолжающих изучение программирования и желающих освоить особенности разработки программ в среде Delphi.
Рецензент: канд. физ.-мат. наук А. М. Задорожный
© Высший колледж информатики Новосибирского государственного университета, 2011
© М. А. Держо, Н. Е. Календарева, С. Т. Календарева, Н. Ю. Карпунина, О. П. Козлова,
Л. К. Попов, О. С. Ухинова, 2011
ISBN 978-5-4437-0004-5
Оглавление
Введение |
6 |
||
Глава 1. Знакомство со средой Delphi |
7 |
||
|
1.1.Использование компонентов общего назначения: TLabel, TButton, TEdit, TShape, TTimer, TPanel |
7 |
|
|
|
1.1.1. Проект «Калькулятор» |
7 |
|
|
1.1.2. Проект «Таймер» |
11 |
|
|
1.1.3. Проект «Светофор» |
15 |
|
|
1.1.4. Проект «Движение шарика TShape с отражением» |
18 |
Глава 2. Изучение графики и работа с изображениями |
21 |
||
|
2.1. Класс TCanvas, его свойства и методы |
21 |
|
|
|
2.1.1. Рисование узоров |
21 |
|
|
2.1.2. Рисование поля для различных игр |
23 |
|
|
2.1.3. Рисование координатной сетки для построения графиков |
25 |
|
|
2.1.4. Построение графиков элементарных функций |
28 |
|
2.2. Класс TBitmap и работа с растровыми рисунками |
30 |
|
|
|
2.2.1. Рисование на поле растрового рисунка в случайных местах |
30 |
|
|
2.2.2. Движение двоичного образа по фоновой картинке |
33 |
|
2.3. Компонент TImage и его использование в динамических приложениях |
36 |
|
|
|
2.3.1. Проект «Движение компонента TImage» |
36 |
|
|
2.3.2. Перемещение картинок |
37 |
|
|
2.3.3. Проект «Движение компонента TImage по окружности» |
39 |
Глава 3. Реакция на события от мыши и клавиатуры |
42 |
||
|
3.1. События от мыши |
42 |
|
|
|
3.1.1. Проект «Попади в мишень» |
42 |
|
|
3.1.2. Проект «Снежинки» |
45 |
|
|
3.1.3. Проект «Крестики-нолики» |
47 |
|
|
3.1.4. Движение образа по удерживанию левой кнопки мыши |
51 |
|
|
3.1.5. Проект «Жизнь клеток» |
52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2. События от клавиатуры |
58 |
|
|
|
3.2.1. Код клавиши |
58 |
|
|
3.2.2. Управляемое движение образа по нажатию клавиши со стрелкой |
59 |
|
|
3.2.3. Совмещение управляемого и неуправляемого движений. Проект «Догонялки» |
61 |
Глава 4. Использование компонентов TMainMenu, TToolBar, OpenPictureDialog, SavePictureDialog, ColorDialog в графических приложениях |
63 |
||
|
4.1. Проект «Простейший графический редактор» |
63 |
|
Глава 5. Динамическое создание компонентов |
68 |
||
|
5.1. Создание кнопок |
68 |
|
|
|
5.1.1. Проект «Лохотрон» |
68 |
|
|
5.1.2. Игра «Пятнадцать» |
71 |
|
5.2. Создание компонентов TImage |
74 |
|
|
|
5.2.1. Проект «Угадай картинку» |
74 |
|
|
5.2.2. Проект «Собери картинку» |
79 |
Глава 6. Массивы и списки |
84 |
||
|
6.1. Компоненты TStringGrid и TDrawGrid |
84 |
|
|
|
6.1.1. Сортировка массива |
84 |
|
|
6.1.2. Проект «Таблица успеваемости» |
86 |
|
|
6.1.3. Система предварительной продажи билетов |
89 |
|
|
6.1.4. Проект «Таблица рисунков» |
92 |
|
|
6.1.5. Рисование в таблице TDrawGrid |
95 |
|
6.2. Компоненты TListBox, TCombobox , их свойства и методы |
97 |
|
|
|
6.2.1. Прорисовка изображений в списке TListBox |
97 |
|
|
6.2.2. Проект «Зоомагазин» |
100 |
|
|
6.2.3. Проект «Шуточная игра» |
101 |
|
|
6.2.4. Проект «Редактирование списка вопросов» |
102 |
Глава 7. Использование компонентов TRadioGroup и TRadioButton в интерфейсе приложений |
105 |
||
|
7.1. Тест «Знаете ли вы загадки?» |
105 |
|
|
7.2. Проект «Исторические даты» |
108 |
|
Глава 8. Работа с файлами |
112 |
||
|
8.1. Компоненты TOpenDialog, TSaveDialog – диалоги открытия и сохранения файлов |
112 |
|
|
|
8.1.1. Просмотр текстовых файлов |
112 |
|
8.2. Добавление и удаление записей в файл и из файла |
114 |
|
|
|
8.2.1. Проект «Журнал группы» |
114 |
|
8.3. Файлы для проекта «Судоку» |
116 |
|
Глава 9. Мультимедийные возможности Delphi |
119 |
||
|
9.1. Просмотр видеофильма с использованием компонента MediaPlayer |
119 |
|
|
9.2. Простейшая мультипликация |
121 |
|
Глава 10. Обработка ошибок времени выполнения программы |
123 |
||
|
10.1. Пример использования try… except |
123 |
|
Глава 11. Темы проектов для самостоятельной работы |
125 |
||
|
11.1. Оформление проекта |
125 |
|
|
|
11.1.1. Проект «Бегущая строка» |
125 |
|
|
11.1.2. Проект «Титры» |
127 |
|
|
11.1.3. Общие рекомендации по оформлению |
129 |
|
11.2. Рекомендации для отчета по проекту |
129 |
|
|
11.3. Темы проектов |
130 |
|
|
|
11.3.1. Головоломка «Сквэрворд» |
131 |
|
|
11.3.2.Задача «Путешествие по марщруту» |
132 |
|
|
11.3.3.Головоломка «Ходом коня» |
132 |
|
|
11.3.4.Задача «Извилистый путь» |
133 |
|
|
11.3.5.Головоломка «Фишки на поле» |
134 |
Список литературы |
135 |