Файл: Лабораторная работа 1 Часть i 13 лабораторная работа n 1 Часть ii 16 лабораторная работа n 1 Часть iii 1.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.11.2023
Просмотров: 301
Скачиваний: 2
СОДЕРЖАНИЕ
ЛАБОРАТОРНАЯ РАБОТА № 1 / Часть I /
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть II /
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 1 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 2 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III /3 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 4 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 5 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 6 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 7 вариант
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 8 вариант
Тема 2: Стандартные диалоговые панели – компоненты группы Dialogs.
Тема 3. Работа с таблицами в Delphi
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть I /
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 1 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 2 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 3 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 4 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 5 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 6 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 7 вариант
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 8 вариант
Тема 4. Графические средства Delphi
Тема 4.1 Графические компоненты
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 1
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 2
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 3
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 4
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 5
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 6
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 7
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 8
Columns:byte – число колонок, в которые выводят элементы списка;
Canvas:Tcanvas – предоставляет возможность изображать графические элементы внутри списка (рисовать).
-
ComboBox (класс TComboBox) – комбинированный (свернутый) список, сочетает в себе строку ввода и список. Доступны все свойства списка ListBox и строки ввода Edit. Дополнительно свойство Style определяет вид списка:
Style=csDropDown – список свернут;
Style=csDropDownList – список свернут, но пользователь не может вводить в него новые значения;
Style=csSimple – список не свернут (как ListBox).
Свойство DropDownCount: integer – определяет, сколько элементов списка будет видно одновременно в открывшемся окне списка.
Пример 1: Чтобы добавить в список набранное в строке ввода ComboBox1 значение после нажатия клавиши Enter, необходимо запрограммировать событие OnKeyPress:
procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key:Char);
begin
if key=#13 then begin
ComboBox1.Items.Append(ComboBox1.Text);
ComboBox1.Text:=’’; //очищение строки ввода
key:=#0;
end;end;
Пример 2: Чтобы добавить ограничение ввода в Edi1, например, только целых положительных чисел, необходимо запрограммировать событие OnKeyPress;
procedure TForm1.Edi11KeyPress(Sender: TObject; var Key:Char);
begin
if not (key in [‘0’..’9’, #8]) then key:=#0;
end;
-
CheckBox (класс TCheckBox) – кнопка с независимой фиксацией (выключатель). Главное свойство Checked:Boolean – кнопка включена или выключена.
Пример: if CheckBox1.Checked:=true
then Label1.Visible:=true
elseLabel1.Visible:=false; // метка становится невидимой
-
RadioGroup (класс TRadioGroup) – панель группы кнопок – переключателей (активной в данный момент может быть только одна из кнопок).
Название группы хранится в свойстве Caption.
Название радиокнопок – в массиве Items:string.
Номер активной кнопки – в свойстве ItemIndex:integer.
Если вместо RadioGroup вы решили использовать компоненты RadioButton, то в этом случае используете свойство Checked:Boolean, как и для CheckBox.
Пример: Указать в заголовке формы, отображающей данные, тип сортировки.
Form2.Caption:=’данныеупорядочены ’ + RadioGroup1.Items [RadioGroup1 .ItemIndex];
-
MainMenu (класс TMainMenu) – строчное (главное) меню – невизуальный компонент; на этапе проектирования двойной щелчок на пиктограмме компонента вызывает построителя меню Menu Designer, который в свою очередь позволяет формировать пункты меню. Для каждого пункта меню доступны следующие свойства:
Caption – название каждого пункта меню, если в названии присутствуют буквы не латинского алфавита, то свойство Name будет отличаться от Caption.
ShortCut – клавиш эквивалент этого пункта меню, доступный из любого места в программе – выбирается из предложенного списка, например: Shift– F10.
У каждого конечного пункта меню имеется только одно событие – OnClick.
Замечания:
-
Чтобы пункт меню выглядел как разделительная черта и был недоступен, следует в свойстве Caption набрать символ «– ». -
Если перед каким– либо символом в названии пункта меню поставить символ «&», то этот символ будет подчеркнут и будет работать как горячая клавиша для этого пункта меню, если нажать ее вместе с клавишей «Alt».
-
PopupMenu (класс TPopupMenu) – организует контекстное меню, которое выводится при нажатии правой кнопки мыши. Невизуальный компонент, для построения пунктов меню также следует вызвать Menu Designerдвойным щелчком по пиктограмме компонента. Для компонента, к которому относится данное контекстное меню, следует указать в свойстве PopUpcomponent имя контекстного меню. -
Panel и GroupBox – группирующие элементы, служат для объединения нескольких компонентов в единую группу. Название группы хранится в свойстве Caption. Список компонентов, размещаемых в группе, хранится в свойстве Controls, а число компонентов – в свойстве ControlCount.
Форма и ее свойства
Форма – это окно в стиле Windows. С точки зрения Delphi окно – это объект класса TForm. Все окна регистрируются в ОС Windows, каждому окну отновится уникальный номер (дескриптор) и память для размещения, поэтому слишком большое число окон истощает системные ресурсы – делает программу громоздкой и медленно работающей.
Размеры доступной для пользователя области формы называются клиентской областью (туда не входит заголовок, линии скроллинга, главное меню) и определяются свойствами ClientHeight, ClientWidth.
Вид формы определяется в основном двумя свойствами: FormStyle и BorderStyle.
FormStyle = ( | fsNormal, | fsStayOnTop, | fsMdiForm, | fsMdiChild |
| Обычная | Расположена поверх других | Старшая форма MDI | Младшая форма MDI |
BoderStyle = ( | bsNone, | bsSingle, | bsSizeble | bsDialog, …… |
| Без рамок, заголовка и кнопок | Рамка в виде тонкой одинарной линии | Рамка в виде толстой одинарной линии | Диалоговое окно (нельзя изменить размер) |
Стандартные виды окна определяются свойством WindowState:
WindowState = ( | wsNormal, | wsMaximied, | wsMinimized |
| Без рамок, заголовка и кнопок | Рамка в виде тонкой одинарной линии | Рамка в виде толстой одинарной линии |
Пример:
Form3.WindowState:=wsMaximized;
Form2.BorderStyle:=bsNone;
Для форм доступны все стандартные события, примененимые для большинства компонентов, но дополнительно доступны следующие события:
OnActivate – форма становится активной (получает фокус);
OnCreate – форма строится (создается);
OnClose – форма закрывается и удаляется из памяти;
OnHide – форма становится невидима, но не удаляется из памяти;
OnResize – форма изменяет размеры;
OnShow – форма показывается (становится видимой и активной).
Основные методы класса TForm
Procedure Print; – печатает форму;
Procedure Show; – показывает форму;
Procedure SetFocus; – активизирует форму;
Procedure Close; – закрывает форму и удаляет из памяти;
Procedure Hide; – скрывает форму, но не удаляет из памяти.
Диалоговое (модальное) окно – это особая разновидность формы
Модальное окно можно перемещать по экрану, но нельзя изменять его размеры. Форма будет выглядеть как диалоговое окно, если установить ее свойство BorderStyle = bsDialog. Вызывается модальное окно при помощи функции ShowModal:integer.
ЛАБОРАТОРНАЯ РАБОТА № 1 / Часть I /
ТЕМА: Знакомство с основными компонентами группы STANDARD
Задание:
-
Создайте на диске Z: папку Lab_Delphi. В ней создайте папку Lab_1а, куда будете сохранять файлы создаваемого приложения. -
Создайте простейшее приложение Delphi, которое будет состоять из одной формы, на которой разместите одну кнопку, щелчок на которой будет выводить сообщение: "Работа завершена" и закрывать форму.
(Поскольку форма одна, она является главной, а закрытие главной формы завершает работу программы).
Порядок выполнения задания:
-
Изменяйте внешний вид формы, размещенной на экране, выбирая и изменяя свойства (Properties) в окне Object Inspector:
-
цвет формы (свойство Color); -
размер формы (свойства Height, Width); -
расположение формы на экране (свойства Left, Тор); -
заголовок формы (свойство Caption – измените Form1 на "Лабораторная работа 1").
Установите на форму компонент "Button" (из группы Standard).
Измените свойство Caption кнопки на "Выход".
-
Активизируйте страницу Events (события) окна Object Inspector, просмотрите события, доступные для кнопки. Выберите событие "OnClick", т.е. щелкните в поле справа от названия события 2 раза указателем мыши – откроется окно Unit1 с заголовком процедуры – обработчика события onClick:
procedure Tform1.Button1Click(Sender:Tobject);
begin
end;
Впишите между строчками Begin …. end; данной процедуры 2 строчки:
procedure Tform1.Button1Click(Sender:Tobject);
begin
ShowMessage('Работазавершена');
Form1.Close ;
end;
-
Каждой форме в Delphi соответствует свой модуль Unit, по умолчанию форме Form1 соответствует модуль Unit1.
-
Просмотрите модуль Unit1 вашей программы – обратите внимание, как описан класс Tform1: в его состав уже автоматически включены и компонент Button1 и процедура Button1Click. -
Сохраните модуль Unit1: выберите пункт меню File /Save Аs – и сохраните модуль без изменения его имени в папке Lab_1а (к имени модуля автоматически добавляется расширение .раs). -
Выберите пункт меню Project/View Source – просмотрите текст главного файла вашего проекта (по умолчанию файл– проекта называется Project1.dpr). Сохраните файл проекта Project1 так же в папке Lab_1а через пункт меню File /Save Аs.
-
Выполните сборку проекта выберите п. меню Project/Compile Project1– в результате компиляции проекта будет создан выполнимый файл Project1.exe.
Запустите программу на выполнение выбором пункт меню Run /Run.
-
Продемонстрируйте программу преподавателю. -
Сверните Delphi таким образом, чтобы были видны пиктограммы рабочего стола Windows. Просмотрите содержимое папки Lab_1а; обратите внимание, какие файлы созданы дополнительно:
Unit1.dfm – файл формы,
Project1.res – файл ресурсов,
Unit1.dcu – файл модуля после компиляции,
Project1.dof – файл опций проекта.
Запустите на выполнение файл Project1.ехе прямо из окна папки Lab_1а.
Удалите из папки Lab_1а все файлы, кроме файла Project1.ехе и снова запустите программу – убедитесь, что ехе – файл работает автономно и прочие рабочие файлы ему не нужны.
-
Создайте на диске Z: в папке Lab_Delphi папку Lab_1b, куда будете сохранять файлы нового приложения. -
Откройте новый проект, выбрав в главном окне Delphi пункт меню File/New/Application – откроется пустая форма Form1 и соответствующий ей модуль Unit1 и выполните «Часть II Лабораторной работы 1».
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть II /
Задание:
Создать приложение, состоящее из двух форм, позволяющее продемонстрировать изменение цвета формы Form2 с помощью функции RGB.
Замечание: Любой цвет можно получить смешиванием трех основных цветов: синего, зеленого, красного. Для установки цвета в Delphi можно использовать функцию RGB, в которой указываются 3 параметра в пределах от 0 до 255, где первый параметр задает количество красного оттенка, второй – количество зеленого, третий – синего.
Например, RGB (0,0,255) возвращает чистый синий цвет;
RGB (255,100,140) – возвращает розовый цвет
Для изменения цвета формы удобно связать каждый параметр функции RGB с компонентом SCROLLBAR.
Порядок выполнения задания:
-
Убедитесь, что на диске Z: в папке Lab_Delphi создана папка Lab_1b, куда будете сохранять файлы создаваемого приложения. -
На форме FORM1 снизу расположите 2 стандартные кнопки (Button) и назовите их соответственно: "Цвета" и "Выход" (свойство Сарtion). Напишите программный код для события OnClick т.о., чтобы при нажатии на кнопку "Цвета" вызывалась другая форма FORM2 (можно использовать метод Form2.Show), а при нажатии на кнопку "Выход" выдавалось сообщение "Задача завершена" и форма закрывалась (используйте ShowMessage и Сlose). -
Установите на форму FORM1 компонент Label. Измените его размер таким образом, чтобы он занимал всю область формы, кроме пространства, занятого под кнопки. -
Установите свойство WordWrap компонента Label в значение Тruе (это даст возможность размещать надпись в несколько строк). Напишите в свойстве Caption примерно такой текст: 'Демонстрация цветовой палитры '. -
В свойстве Fоnt выберите по своему усмотрению шрифт, цвет и установите размер символов таким образом, чтобы надпись занимала все пространство компонента и располагалась в несколько строк. -
Просмотрите и сохраните модуль Unit1 и главный файл проекта Рroject1 в папке Lab_1b. -
Выберите пункт меню File/New/Form – откроется новая форма FОRМ2. Установите свойства формы2 следующим образом: