Создание консольного приложения
Цель работы - создать консольную программу.
1. Дать команду главного меню File > New > Other (Файл > Новый > Другое), и в диалоговом окне на закладке New выбрать значок Console Application (Консольное приложение).
2. После нажатия на кнопку OK экран примет следующий вид:
3. Текст был сгенерирован Delphi автоматически. Он представляет собой шаблон создаваемого приложения. Ничего изменять в этом тексте в принципе не надо - он соответствует готовой программе. Но внесем некоторые изменения.
4. Введите текст программы в окно кода.
5. Выбрать команду Run. Получить результат. Нажать Enter для выхода в окно кода.
Практическая работа № 3
«Приветствие»
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы по щелчку мышью на кнопке «Приветствие» появляется сообщение «Первые успехи».
2. Для выхода из программы необходимо щелкнуть мышью на кнопке «Закрыть».
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: метку Label и две кнопки Button.
3. Выполнить следующие действия:
Таблица 2.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Проект2»
|
Label1
| Properties
| Caption
| Ввод текста надписи «Первые успехи»
|
Button1
| Properties
| Caption
| Установка имени кнопки «Приветствие»
|
Events
| OnClick
| Label1.Caption: =’Первые успехи’
|
Button2
| Properties
| Caption
| Установка имени кнопки «Закрыть»
|
Events
| OnClick
| Close;
|
4. Сохраните проект, запустите и протестируйте его.
Задание для самостоятельного выполнения
1. Сделать шрифт выводимой реплики «Первые успехи! » отличным от стандартного по виду, цвету и размеру.
Подсказка. В Object Inspector дважды щелкнуть справа от названия свойства Font.
2. Заменить вид кнопки «Выход» на более привлекательный.
Подсказка. Для замены кнопки удалить существующую, а другую BitBtn найти в палитре компонентов на вкладке Additional. Затем изменить ее вид с помощью свойства Kind.
3. Сделать так, чтобы после нажатия кнопки «Приветствие» на экране появлялось сообщение «Первые и не последние! ».
Подсказка. Изменить значение свойства Caption метки Labell при реакции кнопки Buttonl на событие OnClick.
Листинг программы
unit Unitl;
Interface
Uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons;
Type
TForral = class(TForm)
Labell: TLabel;
Buttonl: TButton;
BitBtnl: TBitBtn;
procedure ButtonlClick(Sender: TObject);
Private
{Private declarations }
Public
{Public declarations }
end;
Var
Forml: TFonnl;
Implementation
{$R *.DFM)
procedure TForml.ButtonlClick(Sender: TObject);
Begin
Label1.Caption: ='Первые и не последние! ';
end;
End.
Практическая работа № 4
«Случайный выбор»
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы появляется надпись «Брось кубик».
2. По щелчку мышью на кнопке «Бросок кубика» появляется сообщение, выдающее числа-очки в диапазоне 0 - 6.
3. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
- Открыть новый проект.
- Разместить на форме экземпляры компонентов: метку Label и кнопку Button.
- Выполнить следующие действия:
Таблица 3.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Бросок кубика»
|
Label1
| Properties
| Caption
| Ввод текста надписи «Брось кубик»
|
Button1
| Properties
| Caption
| Установка имени кнопки «Бросок кубика»
|
Events
| OnClick
| Label1.Caption: = IntToStr(n);
|
- Сохраните проект, запустите и протестируйте его.
Фрагмент программы
procedure TForml.ButtonlClick(Sender: TObject);
var n: Integer;
Begin
n: = random (6) + 1;
Label1.Caption: = IntToStr (n);
end;
End.
- Создать функцию, отображающую числовые значения граней.
Function Kubic (Sides: Integer): Integer;
Begin
If Sides > = 1 then
Begin
Result: = random (Sides) +1;
End
Else
Begin
Result: =0;
end;
End;
Практическая работа № 5
Изменение заголовка формы
Цель работы - создать программу, выполняющую следующие действия:
- После запуска программы ввести текст в текстовом поле.
- По щелчку мышью на кнопке «Сменить заголовок окна» изменяется заголовок окна.
- Ввести новый текст в текстовом поле.
- Изменить название заголовка окна по нажатию клавиши Enter.
- Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: метку Label, кнопку Button, текстовое поле Edit.
3. Выполнить следующие действия:
Таблица 4.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Проект3»
|
Label1(Вкладка Standard)
| Properties
| Caption
| Ввод текста надписи «Введите новый заголовок: »
|
Edit1(Вкладка Standard)
| Properties
| Text
| Очистить значение свойства Text
|
Button1(Вкладка Standard)
| Properties
| Caption
| Установка имени кнопки «Сменить заголовок окна»
|
Default
| Выбрать в раскрывающемся списке значение True
|
Events
| OnClick
| Form1.Caption: = Edit1.Text;
|
4. Сохраните проект, запустите и протестируйте его.
Задание для самостоятельного выполнения
Создать программу, выполняющую следующие действия:
- После запуска программы отображаются: две строки для ввода текущих курсов для евро и доллара; строка для ввода денежной суммы в рублях; две строки для вывода эквивалента в евро, долларах.
- Ввести текущий курс для евро и доллара.
- Ввести денежную сумму в рублях.
- По щелчку мышью на кнопке «Подсчитать эквивалент» выводится денежная сумма в евро и долларах.
- Ввести новый текущий курс для евро и доллара.
- Ввести новую денежную сумму в рублях.
- По щелчку мышью на кнопке «Подсчитать эквивалент» выводится новая денежная сумма в евро и долларах.
- Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Практическая работа № 6
«Двигающая кнопка»
Цель работы - создать программу, выполняющую следующие действия:
1. По щелчку мышью на кнопке кнопка либо останавливается, либо двигается.
2. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
- Открыть новый проект.
- Разместить на форме экземпляры компонентов: кнопку Button, таймер Timer. Кнопка включает и выключает таймер, а таймер двигает кнопку.
- Выполнить следующие действия:
Таблица 5.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Двигающаяся кнопка»
|
Timer1
| Properties
| Enabled
| Установить значение свойства Enabled = false
Свойство Enabled определяет, включен или выключен таймер (по умолчанию, он включен).
|
Interval
| Interval = 100
Свойство Interval определяет интер-вал в миллисекундах между возник-новением событий OnTimer (по умол-чанию интервал равен 1 секунде).
|
| Events
| OnTimer
| Button1.Left: = Button1.Left - 5; if Button1.Left < 10
then Button1.Left: = 100;
|
Button1
| Properties
| Caption
| Установка имени кнопки «Сменить заголовок окна»
|
Default
| Выбрать в раскрывающемся списке значение True
|
Events
| OnClick
| Timer1.Enabled: = not Timer1.Enabled;
|
- Сохраните проект, запустите и протестируйте его.
Практическая работа № 7
«Альбом»
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается рисунок.
2. По щелчку мышью на рисунке появляется диалоговое окно.
3. Выбрать в открывшемся диалоговом окне любой другой рисунок.
4. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: панель Panel, рисунок Image, диалоговое окно OpenDialog.
3. Выполнить следующие действия:
Таблица 6.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Альбом»
|
Panel1(Вкладка Standard)
| Properties
| Caption
| Очистите значение свойства Caption
|
BevelOuter
| Выбрать в раскрывающемся списке значение bvLowered
|
BevelInner
| Выбрать в раскрывающемся списке значение bvNone
|
BewelWidth
| Присвоить значение 2
|
Width
| Присвоить значение 241
|
Height
| Присвоить значение 185
|
Image1(Вкладка Additional)
| Properties
| Left
| Присвоить значение 2
|
Top
| Присвоить значение 2
|
Width
| Присвоить значение 237
|
Height
| Присвоить значение 181
|
Stretch
| Включить свойство True
|
Picture
| С помощью кнопки-построителя открыть диалоговое окно Picture Editor (Редактор изображений). Щелкнуть на кнопке Load (Загрузить) – откроется диалоговое окно Load Picture (Загрузка рисунка). Открыть папку C: \Windows и выбрать файл Лес.bmp, щелкнуть на кнопке Открыть. Вернуться в окно Редактора изображений, щелкнуть на кнопке OK.
|
Image1.Picture.LoadFromFile (OpenDialog1.FileName);
|
Events
| OnClick
| OpenDialog1.Execute;
|
OpenDialog1(Вкладка Dialogs)
| Properties
| Title
| Ввести текст: «Выбор изображения»
|
FileName
| Ввести полный путь доступа к файлу: C: \Windows\Лес.bmp
|
Filter
| Ввести текст: Растровое изображение (*.bmp)|*.bmp
|
DefaultExt
| Присвоить свойству значение: .bmp
|
Options
| Подсвойству ofFileMustExit (Файл должен существовать) присвоить значение True (Да)
|
4. Сохраните проект, запустите и протестируйте его.
Листинг подпрограммы
procedure TForm1.Image1Click (Sender: TObject);
Begin
OpenDialog1.Execute;
Image1.Picture.LoadFromFile (OpenDialog1.FileName);
end;
Практическая работа № 8
Работа с меню
Цель работы -
Создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается строка меню (Файл, Выход).
2. При выборе пункта меню Файл появляются пункты меню (Рисунки, Выход).
3. При выборе пункта меню Рисунки появляется вложенное меню, состоящее из двух пунктов (Облака, Лес).
4. По щелчку правой кнопки мыши появляется контекстное меню.
5. Выбрать по пункту другой рисунок
6. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
7. Если выбрать любой из пунктов Выход, работа программы завершается.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: панель Panel, рисунок Image, диалоговое окно OpenDialog.
3. Выполнить следующие действия:
Таблица 7.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Мое меню»
|
Events
| OnMouseDown
| var p: TPoint;
begin
p.X: =X;
p.Y: =Y;
p: = ClientToScreen (p);
PopupMenu1.Popup (p.X, p.Y);
end;
|
Запустить редактор меню (дважды щелкнуть на значке меню на форме)
|
Form1.MainMenu1
| Properties
(в окне Object Inspector не выбран никакой объект)
| Caption
| Ввести текст пункта меню – Файл, и нажать Enter. Система присвоит ему имя N1
|
Между существующими и будущими пунктами меню можно переключаться с помощью щелчка мыши или курсорных клавиш.
|
Form1.MainMenu1
| Properties
| Caption
| Ввести текст пункта меню – Выход, и нажать Enter. Система присвоит ему имя N2.
|
Events (щелкнуть на пункте Выход в строке меню)
| N2Click
| Close;
|
Щелкните на пункте Файл. Редактор меню создал еще одну заготовку под этим пунктом. Это заготовка для меню, которое откроется при выборе пункта Файл в работающей программе. Используя заготовки, создайте в этом меню два пункта: Рисунки (система присвоит ему имя N3) и Выход (N4). Выберите в редакторе меню пункт Рисунки и нажмите комбинацию клавиш Ctrl + Вправо.
|
N4: TMenuItem
| Events
| OnClick
| Выберем из раскрывающегося списка уже существующую процедуру-обработчик N2Click
|
Form1.MainMenu1
| Properties
| Caption
| Ввести текст пункта меню – Облака, и нажать Enter. Система присвоит ему имя N5.
|
N5: TMenuItem
| Events (выбрать в строке меню на форме пункт Облака)
| OnClick
| Image1.Picture.LoadFromFile (‘C: \Windows\Облака.bmp’);
|
Form1.MainMenu1
| Properties
| Caption
| Ввести текст пункта меню – Лес, и нажать Enter. Система присвоит ему имя N6.
|
N6: TMenuItem
| Events (выбрать в строке меню на форме пункт Лес)
| OnClick
| Image1.Picture.LoadFromFile (‘C: \Windows\Лес.bmp’);
|
Закройте окно редактора меню и убедитесь, что теперь строка меню появилась в основной форме программы.
|
Продолжение таблицы 7.
|
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
PopupMenu(Вкладка Standard)
| Properties
| Caption
| Ввести текст пункта меню – Облака, и нажать Enter. Система присвоит ему имя N7.
|
Caption
| Ввести текст пункта меню – Лес, и нажать Enter. Система присвоит ему имя N8.
|
N7
| Events
| OnClick
| Выберем из раскрывающегося списка уже существующую процедуру-обработчик N5Click
|
N8
| Events
| OnClick
| Выберем из раскрывающегося списка уже существующую процедуру-обработчик N6Click
|
Image
(Вкладка Additional)
| Properties
| Stretch
| Присвоить значение True
|
4. Сохраните проект, запустите и протестируйте его.
Листинг подпрограммы
procedure TForm1.N2Click (Sender: TObject);
Begin
Close;
end;
procedure TForm1.N5Click (Sender: TObject);
Begin
Image1.Picture.LoadFromFile (‘C: \Windows\Облака.bmp’);
end;
procedure TForm1.N6Click (Sender: TObject);
Begin
Image1.Picture.LoadFromFile (‘C: \Windows\Лес.bmp’);
end;
procedure TForm1.FormMouseDown
(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X. Y: Integer);
var p: TPoint;
Begin
p.X: =X;
p.Y: =Y;
p: = ClientToScreen (p);
PopupMenu1.Popup (p.X, p.Y);
end;
Практическая работа № 9
Случайный выбор из списка
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается три поля.
2. По щелчку мышью на кнопке «Случайный выбор» из трех слов составляется предложение случайным образом.
3. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: поле со списком ComboBox, командная кнопка Button.
3. Выполнить следующие действия:
Таблица 8.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Сочинитель»
|
Events
| OnCreate
| ComboBox1.ItemIndex: =0;
ComboBox2.ItemIndex: =0;
ComboBox3.ItemIndex: =0;
|
ComboBox1
(Вкладка Standard)
| Properties
| Style
| Выберите значение cSDropDownList из раскрывающегося списка
|
Items
| Щелкните на кнопке построителя. Откроется окно String List Editor (Редактор списка строк). Ввести пункты списка по одному в каждую строчку, завершая ввод нажатием клавиши Enter. После того как список готов, щелкнуть на кнопке OK.
|
Продолжение таблицы 8.
|
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
ComboBox2
(Вкладка Standard)
| Properties
| Style
| Выберите значение cSDropDownList из раскрывающегося списка
|
Items
| Щелкните на кнопке построителя. Откроется окно String List Editor (Редактор списка строк). Ввести пункты списка по одному в каждую строчку, завершая ввод нажатием клавиши Enter. После того как список готов, щелкнуть на кнопке OK.
|
ComboBox3
(Вкладка Standard)
| Properties
| Style
| Выберите значение cSDropDownList из раскрывающегося списка
|
Items
| Щелкните на кнопке построителя. Откроется окно String List Editor (Редактор списка строк). Ввести пункты списка по одному в каждую строчку, завершая ввод нажатием клавиши Enter. После того как список готов, щелкнуть на кнопке OK.
|
Button1
(Вкладка Standard)
| Properties
| Caption
| Установка имени кнопки «Случайный выбор»
|
Events
| OnClick
| ComboBox1.ItemIndex: =
Random(ComboBox1.ItemIndex.Count);
ComboBox2.ItemIndex: =
Random(ComboBox2.ItemIndex.Count);
ComboBox3.ItemIndex: =
Random(ComboBox3.ItemIndex.Count);
|
4. Сохраните проект, запустите и протестируйте его.
Таблица 9.
Список существительных
| Список наречий
| Список действий
|
Кошка
| Быстро
| Плавает
|
Змея
| Высоко
| Бегает
|
Кузнечик
| Медленно
| Летает
|
Дельфин
| Сильно
| Ползает
|
Черепаха
| Хорошо
| Прыгает
|
Ласточка
| Плохо
| Прячется
|
Листинг подпрограммы
procedure TForm1.FormCreate (Sender: TObject);
Begin
Randomize;
ComboBox1.ItemIndex: =0;
ComboBox2.ItemIndex: =0;
ComboBox3.ItemIndex: =0;
end;
procedure TForm1.Button1Click (Sender: TObject);
Begin
ComboBox1.ItemIndex: = Random(ComboBox1.ItemIndex.Count);
ComboBox2.ItemIndex: = Random(ComboBox2.ItemIndex.Count);
ComboBox3.ItemIndex: = Random(ComboBox3.ItemIndex.Count);
end;
Практическая работа № 10
Простейший плеер
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается музыкальный проигрыватель.
2. По щелчку мышью на кнопке «Play» воспроизвести выбранную мелодию.
3. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: медиаплеер MediaPlayer, рисунок Image.
3. Выполнить следующие действия:
Таблица 10.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Музыкальный проигрыватель»
|
MediaPlayer1
(Вкладка System)
| Properties
| AutoOpen
| Выберите значение True из раскрывающегося списка
|
FileName
| Указать не полный путь к файлу, а относительно местоположения программы. Например, “Prim.wav”, то программа будет этот файл искать в папке, где сама находиться.
|
4. Сохраните проект, запустите и протестируйте его.
5. Создать проигрывателю картинку-фон, например:
6. Сохранить картинку-фон в файле, например, Фон.bmp
7. Вставить в плеер в качестве фона.
Продолжение таблица 10.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Image1
| Properties
| Picture
| С помощью кнопки Load выберите ваш файл Фон.bmp и нажмите ОК. В результате на месте пунктирной каемки на форме появится этот рисунок из файла.
|
AutoSize
| Выбрать значение True
|
8. Подобрать размер формы под размер изображения, само изображение установите в верхний левый угол, панель с кнопками медиаплеера поставить так, чтобы гармонировала с рисунком фона, например:
Практическая работа № 11
«Прыгающая кнопка»
Цель работы - создать программу-игру, выполняющую следующие действия:
1. После запуска программы в окне изображается беспорядочно прыгающая кнопка.
2. Необходимо успеть щелкнуть по ней.
3. Кнопка перепрыгивает из одного места в другое по сигналу, полученному от таймера.
4. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: командная кнопка Button, таймер Timer.
3. Выполнить следующие действия:
Таблица 11.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Прыгающая кнопка»
|
ClientWidth (Внутренняя ширина)
| Присвоить значение 300
|
ClientHeigth (Внутренняя высота)
| Присвоить значение 200
|
BorderStyle (тип границы)
| Выбрать значение bsSingle (тонкая)
|
Events
| OnCreate
| Randomize;
|
Button1
(Вкладка Standard)
| Properties
| Caption
| Ввести надпись «Нажми меня»
|
TabStop
| Присвоить значение False. Это свойство разрешает выбрать данный элемент управления клавишей Tab. Клавиатурой пользоваться запрещается.
|
Visible
| Присвоить значение False. Сначала кнопка невидима.
|
Height
| Присвоить значение 30
|
Width
| Присвоить значение 80
|
Events
| OnClick
| Button1.Caption: = ‘Готово’;
Button1.Enabled: = False;
Timer1.Enabled: = False;
|
Продолжение таблицы 11.
|
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Button2
(Вкладка Standard)
| Properties
| Caption
| Ввести надпись «Выход»
|
Default (по умолчанию)
| Выбрать значение True
|
Left (слева)
| Присвоить значение 110
|
Top (сверху)
| Присвоить значение 160
|
Width (ширина)
| Присвоить значение 80
|
Height (высота)
| Присвоить значение 30
|
Events
| OnClick
| Close;
|
Timer1
(Вкладка System)
| Properties
| Interval (интервал)
| Присвоить значение 500 (промежуток времени измеряется в миллисекундах)
|
Events
| Timer
| var i: Integer;
begin
i: =Random(9);
Button1.Visible: = True;
Button1.Top: = 10 + 50 * ( i div 3);
Button1.Left: = 10 + 100 * ( i mod 3);
end;
|
4. Сохраните проект, запустите и протестируйте его.
Листинг подпрограммы
procedure TForm1.Button2Click (Sender: TObject);
Begin
Close;
end;
procedure TForm1.Timer1Timer (Sender: TObject);
var i: Integer;
Begin
i: =Random(9);
Button1.Visible: = True;
Button1.Top: = 10 + 50 * ( i div 3);
Button1.Left: = 10 + 100 * ( i mod 3);
end;
procedure TForm1.Button1Click (Sender: TObject);
Begin
Button1.Caption: = ‘Готово’;
Button1.Enabled: = False;
Timer1.Enabled: = False;
end;
procedure TForm1.FormCreate (Sender: TObject);
Begin
Randomize;
end;
Задание для самостоятельного выполнения
- Измените игру так, чтобы скорость можно было настраивать в процессе игры.
- Создайте две кнопки: Медленнее и Быстрее. Щелчок на одной из них будет увеличивать или уменьшать значение свойства Timer1.Interval на 100 миллисекунд.
Практическая работа № 12
«Таблица умножения»
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается два движка.
2. Необходимо выбрать два числовых значения и найти их произведение.
3. Если выбирается одно число, то находится его квадрат.
4. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: командная кнопка Button, движок TrackBar, рамка GroupBox, надпись Label, флажок CheckBox.
3. Выполнить следующие действия:
Таблица 12.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Таблица умножения»
|
TrackBar1
(Вкладка Win32)
| Properties
| Min (Минимум)
| Присвоить значение 2
|
Max (Максимум)
| Присвоить значение 99
|
Position (Положение)
| Присвоить значение 2
|
LineSize (Малое изменение)
| Присвоить значение 1
|
PageSize (Постраничное изменение)
| Присвоить значение 7
|
Frequency (Частота засечек)
| Присвоить значение 7
|
Events
| OnChange
| Label1.Caption: =
IntToStr(TrackBar1.Position);
Label3.Caption: =
IntToStr(TrackBar1.Position *
TrackBar2.Position);
if CheckBox1.Checked then
TrackBar2.Position: =TrackBar1.Position;
|
Продолжение таблицы 12.
|
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
TrackBar2
(Вкладка Win32)
| Properties
| Min (Минимум)
| Присвоить значение 2
|
Max (Максимум)
| Присвоить значение 99
|
Position (Положение)
| Присвоить значение 2
|
LineSize (Малое изменение)
| Присвоить значение 1
|
PageSize (Постраничное изменение)
| Присвоить значение 7
|
Frequency (Частота засечек)
| Присвоить значение 7
|
Events
| OnChange
| Label2.Caption: =
IntToStr(TrackBar2.Position);
Label3.Caption: =
IntToStr(TrackBar1.Position *
TrackBar2.Position);
if CheckBox1.Checked then
TrackBar1.Position: =
TrackBar2.Position;
|
GroupBox1
(Вкладка Standard)
| Properties
| Caption
| Ввести подпись «Произведение»
|
Label1
(Вкладка Standard)
| Properties
| AutoSize (Автоподбор)
| Установить значение False
|
Caption
| Присвоить значение 2
|
Alignment (Выравнивание)
| Установить значение taRightJustify (Выравнивание по правому краю)
|
Label2
(Вкладка Standard)
| Properties
| AutoSize
| Установить значение False
|
Caption
| Присвоить значение 2
|
Alignment
| Установить значение taRightJustify (Выравнивание по правому краю)
|
Label3
(Вкладка Standard)
| Properties
| AutoSize
| Установить значение False
|
Caption
| Присвоить значение 4
|
Alignment
| Установить значение taRightJustify (Выравнивание по правому краю)
|
CheckBox1
(Вкладка Standard)
| Properties
| Caption
| Ввести подпись «Квадрат»
|
Alignment
| Установить значение taLefttJustify (Выравнивание по левому краю)
|
Events
| OnClick
| TrackBar2.Position: =
TrackBar1.Position;
|
4. Сохраните проект, запустите и протестируйте его.
Листинг подпрограммы
procedure TForm1.TrackBar1Change (Sender: TObject);
Begin
Label1.Caption: = IntToStr(TrackBar1.Position);
Label3.Caption: = IntToStr(TrackBar1.Position * TrackBar2.Position);
if CheckBox1.Checked then TrackBar2.Position: = TrackBar1.Position;
end;
procedure TForm1.TrackBar2Change (Sender: TObject);
begin
Label2.Caption: = IntToStr(TrackBar2.Position);
Label3.Caption: = IntToStr(TrackBar1.Position * TrackBar2.Position);
if CheckBox1.Checked then TrackBar2.Position: = TrackBar1.Position;
end;
procedure TForm1.CheckBox1Click (Sender: TObject);
begin
TrackBar2.Position: = TrackBar1.Position;
end;
Задание для самостоятельного выполнения
- Изменить программу так, чтобы находить произведения не только двузначных, но и трехзначных чисел от 2 до 199.
- Изменить программу так, чтобы находить сумму двух чисел.
Практическая работа № 13
Применение полос прокрутки
Цель работы - создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается две полосы прокрутки. Вертикальная полоса будет управлять движением по вертикали, горизонтальная – по горизонтали.
2. Наводя указатель мыши на одну из двух фигур, можно выбирать, какая из этих фигур связана с полосами прокрутки.
3. Требуются дополнительные объекты, с помощью которых ограничивается область движения фигур в окне.
4. Если полоса прокрутки активная, то она должна реагировать на клавиши ВВЕХ, ВНИЗ, ВЛЕВО, ВПРАВО, PAGE UP, PAGE DOWN.
5. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке в строке заголовка.
Описание плана разработки программы
1. Открыть новый проект.
2. Разместить на форме экземпляры компонентов: панель Panel, полоса прокрутки ScrollBar, фигура Shape.
3. Ввести дополнительную переменную логического типа num. Если она принимает значение True (Да), то текущей считается первая фигура. Значению False (Нет) соответствует вторая фигура. Эта переменная должна быть доступна во всех процедурах.
4. Выполнить следующие действия:
Таблица 13.
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
Form1
| Properties
| Caption
| Установка имени формы «Перемещение фигур»
|
Panel
(Вкладка Standard)
| Properties
| Height
| Присвоить значение 161
|
Width
| Присвоить значение 161
|
Caption
| Оставить значение свойства пустым
|
ScrollBar1
(Вкладка Standard)
| Properties
| Min
| Присвоить значение 5
|
Max
| Присвоить значение 145
|
Position
| Присвоить значение 76
|
SmallChange
| Присвоить значение 2
|
Продолжение таблицы 13.
|
Выделенный объект
| Вкладка окна
Object Inspector
| Имя свойства/
имя события
| Действие
|
|
| LargeChange (Большое изменение)
| Присвоить значение 20
|
Events
| OnChange
| if num then Shape1.Left: =
ScrollBar1.Position
else Shape2.Left: =
ScrollBar1.Position
|
ScrollBar2
(Вкладка Standard)
| Properties
| Kind
| Выбрать значение sbVertical. Горизонтальная полоса прокрутки станет вертикальной.
|
Min
| Присвоить значение 5
|
Max
| Присвоить значение 145
|
Position
| Присвоить значение 76
|
SmallChange
(Малое изменение)
| Присвоить значение 2
|
LargeChange
| Присвоить значение 20
|
Events
| OnChange
| if num then Shape1.Top: =
ScrollBar2.Position
else Shape2.Top: =
ScrollBar2.Position
|
Shape1
(Вкладка Additional)
| Properties
| Height
| Присвоить значение 11
|
Width
| Присвоить значение 11
|
Left
| Присвоить значение 76
|
Top
| Присвоить значение 76
|
Shape (Форма)
| Выбрать значение stCircle (Круг)
|
Brush (Кисть)
| Выбрать для подсвойства Color (Цвет кисти) значение clAqua (голубой цвет)
|
Events
| OnMouseMove
(При движении мыши)
| Shape1.Brush.Color: = clAgua;
Shape1.Brush.Color: = clFuchsia;
Num: = True;
ScrollBar1.Position: = Shape1.Left;
ScrollBar2.Position: = Shape1.Top;
|
Shape2
(Вкладка Additional)
| Properties
| Height
| Присвоить значение 11
|
Width
| Присвоить значение 11
|
Left
| Присвоить значение 76
|
Top
| Присвоить значение 76
|
Shape
| Выбрать значение stSquare (Квадрат)
|
Brush
| Выбрать для подсвойства Color (Цвет кисти) значение clFuchsia (фиолетовый цвет)
|
| Events
| OnMouseMove
| Аналогично Shape2
|
5. Сохраните проект, запустите и протестируйте его.
Листинг подпрограммы