Компоненты, используемые в графике
Компонент Shape (панель Additional) позволяет на форме создавать разноцветные круги, квадраты, эллипсы. Конкретная форма задается свойством Shape, которое может принимать значения, из списка stRectangle, stSquare, stRoundRect, stRoundSquare, stEllipse, stCircle. Следовательно, форму расположенного на форме объекта можно менять динамически, по нажатию на кнопку:
procedure TForm1.Button1Click(Sender: TObject);
begin
Shape1.Shape := stCircle;
end;
И цвет соответственно, свойство Color, само вложено в свойство Brush (кисть), поэтому к нему надо обращаться по цепочке: Shape1.Brush.Color := clRed;
У кисти есть подсвойство Style, которое определяет способ "заливки" внутренности объекта - сплошное bsSolid, в решеточку bsCross и т.д. Конкретные значения некоторого свойства можно посмотреть в инспекторе объектов, в выпадающем списке.
Shape1.Brush.Style := bsCross;
Компонент Bevel позволяет создавать выпуклые/невыпуклые панели, рамки и линии Его главные свойства - Shape и Style.
Компонент Panel (раздел Standard) предназачен для создания декоративных панелей, на которых удобно группировать элементы управления, выделяя их визуально. Панель оформляется с помощью свойств, связанных с внешним видом ее каемки - BorderStyle, BorderWidth, BevelWidth, BevelInner, BevelOuter.
Кроме того, можно использовать кнопки с картинками BitBtn или SpeedButton на панели Additional. Через свойство Glyph можно задать картинку, которая будет показана на самой кнопке.
ПРИЛОЖЕНИЕ 2
Таблица 1.1. Цвет компонента или объекта (свойство Color)
Значение | Цвет | Значение | Цвет |
clBlack | Черный | cIGray | Серый |
cIMaroon | Темно-красный | cISilver | Серебряный |
cIGreen | Зеленый | cIRed | Красный |
clOlive | Оливковый | cILime | Ярко-зеленый |
cINavy | Темно-синий | clBlue | Голубой |
clPurple | Фиолетовый | clFuchsia | Сиреневый |
cITeal | Сине-зеленый | clAqua | Ярко-голубой |
clWhite | Белый |
Таблица 1.2. Системные цвета Windows, определяемые цветовой схемой
Значение | Цвет для элемента |
clBackground | фон окна |
clActiveCaption | заголовок активного окна |
clInactiveCaption | заголовок неактивного окна |
clMenu | фона меню |
clWindow | фон Windows |
clWindowFrame | рамка окна |
clMenuText | текст элемента меню |
clWindowText | текст внутри окна |
cICaptionText | заголовок активного окна |
clActiveBorder | рамка активного окна |
clInactiveBorder | рамка неактивного окна |
clAppWorkSpace | рабочая область окна |
clHighlight | фон выделенного текста |
clHightlightText | выделенный текст |
clBtnFace | Кнопка |
clBtnShadow | фон кнопки |
cIGrayText | недоступный элемент меню |
clBtnText | текст кнопки |
Таблица 1.3. Базовые свойства Color как шестнадцатеричные константы
Цвет | Значение | Цвет | Значение |
Черный | $000000 | Синий | $000080 |
Светло-синий | $0000FF | Зеленый | $008000 |
Светло-зеленый | $00FF00 | Сине-зеленый | $008080 |
Голубой | $00FFFF | Коричневый | $800000 |
Светло-красный | $FF0000 | Темно-сиреневый | $800080 |
Сиреневый | $FF00FF | Оливковый | $808000 |
Светло-желтый | $FFFF00 | Темно-серый | $808080 |
Белый | $FFFFFF | Светло-серый | $С0С0С0 |
Таблица 1.4. Выравнивание компонента внутри формы (свойство Align)
Значение | Расположение компонента |
alNone | Без выравнивания на месте размещения при создании программы (значение по умолчанию) |
alTop | Перемещение в верхнюю часть формы, ширина компонента становится равной ширине формы (высота не меняется) |
alBottom | Перемещение в нижнюю часть формы, ширина становится равной ширине формы (высота не изменяется) |
alLeft | Перемещение в левую часть формы, высота компонента становится равной высоте формы (ширина не изменяется) |
alRight | Перемещение в правую часть формы, высота становится равной высоте формы (ширина не изменяется) |
alClient | Компонент полностью занимает всю рабочую область формы |
Приложение 3
Таблица 2.1. Функции ввода вывода
Функция | Описание |
InputBox (Заголовок, Подсказка, Значение) | В результате выполнения функции на экране появляется диалоговое окно, в поле которого пользователь может ввести строку символов. Значением функции является введенная строка. Параметр Значение задает значение функции «по умолчанию», т.е. строку, которая будет в поле редактирования в момент появления окна. |
ShowMessage (s) | Процедура выводит окно, в котором находится сообщение s и командная кнопка Ok. |
MessageDlg (s, t, b, h) | Выводит на экран диалоговое окно с сообщением s и возвращает код кнопки, щелчком на которой пользовательзакрыл окно. Параметр t определяет тип окна: mtWarning – Внимание; mtError – ошибка; myInformation – информация; mtConfirmation – запрос; mtCustom – пользовательское (без значка). Параметр b (множество – заключенный в квадратные скобки список констант0 задает командные кнопки диалогового окна (mbYes, mbNo, mbOk, MbCancel, mbHelp, mbAbort, mbRetry, mbIgnore, mbAll). Параметр h задает раздел справочной системы программы, который появится в результате нажатия кнопки Help или клавиши <F1>. Если справочная система не используется, значение параметра должно быть 0. Значением функции может быть одна из констант: mbYes, mbNo, mbOk, MbCancel, mbHelp, mbAbort, mbRetry, mbIgnore, mbAll, обозначающая соответственную команду. |
Таблица 2.2. Математические функции
Функция | Описание |
Abs (n) | Абсолютное значение n |
Sqrt (n) | Квадратный корень из n |
Sqr (n) | Квадрат n |
Exp (n) | Экспонента n |
Ln (n) | Натуральный логарифм n |
Random (n) | Случайное целое число в диапазоне от 0 до n-1(перед первым обращением к функции необходимо вызвать функцию Randomize, которая выполнит инициализацию программного генератора случайных чисел) |
Sin (?) | Синус выраженного в радианах угла ? |
Cos (?) | Косинус выраженного в радианах угла ? |
Arctan (?) | Арктангенс выраженного в радианах угла ? |
Таблица 2.3. Функции преобразования
Функция | Описание |
Chr (n) | Символ, код которого равен n |
IntToStr (k) | Строка, являющаяся изображением целого k |
FloatToStr (n) | Строка, являющаяся изображением вещественного n |
FloatToStr (n, f, k,m) | Строка, являющаяся изображением вещественного n. При вызове функции указывают: f - формат; k - точность; m - количество цифр после десятичной точки. Формат определяет способ изображения числа: ffGeneral - универсальтный; ffExponent - научный; ffFixed - с фиксированной точкой; ffNumber - с разделителями групп разрядов; ffCurrency - финансовый. Точность – нужное общее количество цифр: 7 или меньше для значений типа Single, 15 или меньше для значения типа Double и 18 или меньше для значения типа Extended |
Format (s, [n1, n2, ...]) | Строка, являющаяся изображением значений n1, n2 и т.д. Способ преобразования значений в строку символов определяют управляющие символы, которые находятся в строке форматирования s |
StrToInt (s) | Целое, изображением которого является строка s |
StrToFloat (s) | Вещественное, изображением которого является строка s |
Round (n) | Целое, полученное путем округления n по известным правилам |
Trunc (n) | Целое, полученное путем отбрасывания дробно части n |
Frac (n) | Дробное, представляющее собой дробную часть вещественного n |
Int (n) | Дробное, представляющее собой целую часть вещественного n |
Приложение 4
Таблица 3.1. События
Событие | Происходит |
OnClick | При щелчке мыши |
OnDblClick | При двойном щелчке кнопкой мыши |
OnMouseDown | При нажатии кнопки мыши |
OnMouseUp | При отпускании кнопки мыши |
OnMouseMove | При перемещении мыши |
OnKeyPress | При нажатии клавиши клавиатуры |
OnKeyDown | При нажатии клавиши клавиатуры. |
События OnKeyDown и OnKeyPress – это чередующиеся, повторяющиеся события. Которые должны происходить до тех пор, пока не будет отпущена удерживаемая клавиша (в этот момент происходит событие OnKeyUp) | |
OnKeyUp | При отпускании нажатой клавиши клавиатуры |
OnCreate | При создании объекта (формы, элемента управления). Процедура обработки этого события обычно используется для инициализации переменных, выполнения подготовительных действий |
OnPaint | При появлении окна на экране в начале работы программы, после появления части окна, которая, например, была закрта другим окном и в других случаях. Событие сообщает о необходимости обновить (перерисовать) окно |
OnEnter | При получении элементом управленя фокуса |
OnExit | При потере элементом управленя фокуса |
Литература
- Симонович С.В., Евсеев Г.А. Занимательное программирование: Delphi. – М.: АСТ – ПРЕСС КНИГА: Инфорком – Пресс, 2001.
- Культин Н.Б. Delphi в задачах и примерах. – СПб.: БХВ – Петербург, 2005.
- Фаронов В.В. Программирование на языке высокого уровня: Учебник для вузов. – СПб.: Питер, 2003.
- Бобровский С.И. Delphi 7. Учебный курс. – СПб.: Питер, 2005.
- Кетков Ю.Л., Кетков А.Ю. Практика программирования: Visual Basic, C++ Builder, Delphi. - СПб.: БХВ – Петербург, 2005.
Содержание
Введение............................................................................................................................................ 2
1. Идеология объектно-ориентированного программирования................................................. 3
1.1. Элементы интерфейса программы Компоненты................................................................... 3
1.2. Инспектор объектов.................................................................................................................. 7
2. Три основных принципа ООП: наследование, инкапсуляция, полиморфизм...................... 8
3. Использование справки............................................................................................................. 10
4. Структура программы................................................................................................................ 11
5. Методы отладки и борьбы с ошибками................................................................................... 13
Практическая работа № 1 «Моя первая программа».................................................................. 16
Практическая работа № 2 Создание консольного приложения................................................ 17
Практическая работа № 3 «Приветствие».................................................................................. 19
Практическая работа № 4 «Случайный выбор».......................................................................... 21
Практическая работа № 5 Изменение заголовка формы............................................................ 23
Практическая работа № 6 «Двигающая кнопка»........................................................................ 25
Практическая работа № 7 «Альбом»............................................................................................ 26
Практическая работа № 8 Работа с меню..................................................................................... 28
Практическая работа № 9 Случайный выбор из списка............................................................ 31
Практическая работа № 10 Простейший плеер........................................................................... 33
Практическая работа № 11 «Прыгающая кнопка»..................................................................... 35
Практическая работа № 12 «Таблица умножения»..................................................................... 37
Практическая работа № 13 Применение полос прокрутки....................................................... 40
Практическая работа № 14 «Светофор»...................................................................................... 43
Практическая работа № 15 «Ханойские башни»........................................................................ 46
Практическая работа № 16 «Электронный альбом»................................................................... 49
Практическая работа № 17 «Вычисление процентов»............................................................... 52
Практическая работа № 18 «Головоломка № 1»......................................................................... 54
Практическая работа № 19 «Головоломка № 2»........................................................................ 56
Практическая работа № 20 «Обычный калькулятор»................................................................ 58
Практическая работа № 21 «Строковый калькулятор»............................................................. 61
Практическая работа № 22 Нахождение индекса в массиве случайных чисел....................... 63
Практическая работа № 23 Находение минимального и максимального числа в массиве... 65
Практическая работа № 24 «Текущее время и текущая дата»................................................... 67
Практическая работа № 25 «Электронные часы»....................................................................... 68
Практическая работа № 26 Графика............................................................................................. 70
Практическая работа № 27 «Олимпийский флаг»...................................................................... 75
Практическая работа № 28 «Узоры»........................................................................................... 77
Практическая работа №29 Перемещение рисунка...................................................................... 80
Практическая работа № 30 Рисунок............................................................................................. 83
Практическая работа № 31 Построение графика........................................................................ 86
Практическая работа № 32 «Градусник»..................................................................................... 88
Практическая работа № 33 Вывод табличных данных.............................................................. 92
Практическая работа № 34 «Игра»............................................................................................... 96
Практическая работа № 35 «Тест».............................................................................................. 104
Практическая работа № 36 «Проигрыватель»........................................................................... 109
Приложение 1
1.1. Часто встречающиеся свойства элементов управления, используемые в Delphi........... 133
1.2. Вложенные свойства............................................................................................................. 133
1.3. Списки.................................................................................................................................... 134
1.4. Элементы управления........................................................................................................... 134
1.5. Многострочное поле Memo................................................................................................. 135
1.6. Компоненты, используемые в графике............................................................................... 135
Приложение 2......................................................................................................................... 137
Таблица 1.1. Цвет компонента или объекта (свойство Color)........................... 137
Таблица 1.2. Системные цвета Windows, определяемые цветовой схемой....... 137
Таблица 1.3. Базовые свойства Color как шестнадцатеричные константы........ 138
Таблица 1.4. Выравнивание компонента внутри формы (свойство Align)........ 137
Приложение 3......................................................................................................................... 139
Таблица 2.1. Функции ввода вывода................................................................ 139
Таблица 2.2. Математические функции............................................................ 139
Таблица 2.3. Функции преобразования............................................................ 140
Приложение 4......................................................................................................................... 141
Таблица 3.1. События....................................................................................... 141
Литература....................................................................................................... 142