Файл: Лабораторная работа 1 Часть i 13 лабораторная работа n 1 Часть ii 16 лабораторная работа n 1 Часть iii 1.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.11.2023
Просмотров: 298
Скачиваний: 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
Лабораторные работы по Delphi 7
Оглавление
Тема 1: Знакомство с основными компонентами группы Standard. Компоненты Delphi визуальные и невизуальные. Свойства и события компонентов. Назначения и основные свойства компонентов группы Standard. 3
ЛАБОРАТОРНАЯ РАБОТА № 1 / Часть I / 13
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть II / 16
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 1 вариант 20
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 2 вариант 21
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III /3 вариант 22
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 4 вариант 23
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 5 вариант 24
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 6 вариант 25
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 7 вариант 26
ЛАБОРАТОРНАЯ РАБОТА N 1 / Часть III / 8 вариант 27
Тема 2: Стандартные диалоговые панели – компоненты группы Dialogs. 28
ЛАБОРАТОРНАЯ РАБОТА №2 31
Тема 3. Работа с таблицами в Delphi 36
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть I / 42
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 1 вариант 44
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 2 вариант 46
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 3 вариант 48
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 4 вариант 50
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 5 вариант 52
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 6 вариант 54
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 7 вариант 56
ЛАБОРАТОРНАЯ РАБОТА № 3 / Часть II / 8 вариант 58
Тема 4. Графические средства Delphi 60
Тема 4.1 Графические компоненты 64
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 1 67
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 2 69
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 3 71
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 4 73
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 5 75
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 6 77
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 7 79
ЛАБОРАТОРНАЯ РАБОТА № 4 / Вариант 8 81
Тема 5. Работа с файлами в Delphi 83
ЛАБОРАТОРНАЯ РАБОТА № 5 91
Тема 1: Знакомство с основными компонентами группы Standard. Компоненты Delphi визуальные и невизуальные. Свойства и события компонентов. Назначения и основные свойства компонентов группы Standard.
Хороший справочник для Delphi - Справочник - "Основы Delphi" (delphibasics.ru)
Основные сведения из теории
Система Delphi поставляется с большим количеством готовых к использованию компонентов. Визуальное программирование с применением компонентов – главное достоинство этой среды разработки.
Компоненты представляют собой объекты
, размещаемые на формах и предназначенные для выполнения операций по отображению и преобразованию информации. На программном уровне компоненты объединены в определенные классы. Общий предок всех компонентов – класс TComponent.
Компоненты бывают двух видов – визуальные (отображаемые) и невизуальные (неотображаемые).
Визуальные компоненты обычно называют управляющими элементами: они видны и на этапе проектирования, и на этапе выполнения программы (таких компонентов большинство – это кнопки, редакторы, списки и т.д.).
Невизуальные компоненты на этапе проектирования отображаются в виде небольшой пиктограммы, а на этапе выполнения не видны вовсе (к таким компонентам относятся Timer, Table, MainMenu и т.д.).
Свойства (properties) компонентов
Свойства – это атрибуты класса, которые определяют состояние и поведение объекта.
Свойства задаются в разделе описания класса после зарезервированного слова Property: указывается имя свойства, затем через двоеточие – тип свойства, затем механизм чтения – записи свойства.
Пример:
PropertyVisible: Boolean;
Основные свойства, доступные для большинства компонентов
Свойства | Тип | Описание |
Align | Перечисление (список) | Определяет, как управляющий элемент выровнен в области родительского (возможные значения: AlBottom, AlRight, AlNone) |
Alignment | Список | Выравнивание текста заголовка внутри компонента (TaCenter, TaLeftJustify, TaRightJustify) |
Caption | String | Заголовок управляющего элемента |
Color | TColor | Цвет фона или поверхности |
Cursor | TCursor (– 32768..32768) | Тип курсора в случае, когда указатель мыши находится над управляющим элементом |
DragCursor | TCursor | Тип курсора при буксировке элемента |
Enabled | Boolean | Определяет, доступен ли управляющий элемент |
Font | TFont | Шрифт текста, отображаемого внутри компонента |
Height, Width | Integer | Высота и ширина компонента |
Left, Top | Integer | Координаты верхнего левого угла компонента: Left – расстояние от левого края формы, Top – расстояние от верхнего края формы. |
Name | String | Уникальное имя компонента (не может содержать не латинские символы) |
ShowHint | Boolean | Определяет, используются ли всплывающие подсказки |
Visible | Boolean | Определяет, является ли компонент видимым |
Свойство «Color»
В Delphi определены специальные константы для определения цвета (около 40) – список этих констант представлен обычно при проектировании в окне Object Inspector; например: константа clMaroon означает темно– бордовый цвет, clBtnFace – текущий цвет поверхности кнопок.
Цвет можно задать также в виде четырехбайтового шестнадцатеричного числа: 3 младших байта передают интенсивность синей, зеленой и красной составляющих (слева на право). Старший байт хранит специальную информацию о типе палитры и прозрачности изображаемых элементов. Например, $000000FF – чистый красный цвет, $00FF0000 – чистый синий цвет.
Для указания цвета удобно использовать функцию RGB, в которой указывается 3 параметра в пределах от 0 до 255, где первый параметр указывает количество красного оттенка, второго – зеленого, третий – синего. Например, RGB (130,130,130) – будет возвращать серый цвет, RGB (0,0,255) – чистый синий цвет и RGB (255,100,140) – розовый цвет.
Свойство «Cursor»
В Delphi определен стандартный набор курсоров, у каждого из них имеется свой числовой идентификатор (отрицательный). В общем случае номер курсора может изменяться от – 32768 до +32768. Курсоры, создаваемые пользователем, получают положительный номер. Курсоры размещаются обычно в файле ресурсов.
Свойство «Font»
FONT – сложное свойство, обладает целым рядом подсвойств, определяющих атрибуты шрифта:
-
Height – высота шрифта в пикселях; -
Name – имя шрифта (ограничено 32 символами); -
Color – цвет символов; -
Size – высота шрифта в пунктах; -
Style – стиль шрифта.-
fsBold – полужирный; -
fsItalic –курсив; -
fsUnderline – подчеркнутый; -
fsStrikeOut – перечеркнутый.
-
События компонентов
Когда пользователь воздействует на компонент при помощи мыши или клавиатуры, компонент генерирует событие. Каждый компонент имеет свой список событий, которые он может обрабатывать. Задача программиста – создать программный код, который будет выполняться при возникновении того или иного события.
Событие – это свойство процедурного типа, при обращении к этому свойству выполняется присвоенная ему подпрограмма– обработчик события.
Для большинства компонентов доступны следующие свойства:
Событие | Пояснение |
OnChange | Изменяется объект или содержимое |
OnClick | Щелчок левой кнопкой мыши |
OnDblClick | Двойной щелчок |
OnDragDrop | Операция буксировки завершается над компонентом |
OnDragOwer | Пользовать буксирует что– либо над компонентом |
OnEnter | Компонент активируется, то есть получает фокус |
OnExit | Компонент теряет фокус |
OnKeyDown | Пользователь нажимает клавишу на клавиатуре |
OnKeyUp | Пользователь отпускает клавишу на клавиатуре |
OnKeyPressed | Пользователь нажимает клавишу на клавиатуре |
OnMouseDown | Нажимается одна из кнопок мыши |
OnMouseUp | Отпускается одна из кнопок мыши |
OnMouseMove | Курсор мыши перемещается над компонентом |
Пример:
Пусть на форме Form1 размещены следующие компоненты: кнопка Button1 и редактор Memo1. И пусть при перемещении курсора над Memo1 кнопка перемещается над компонентом Memo1, цвет Memo1 становится жёлтым, а курсор становится в виде вертикальной черты.
При нажатии на кнопку Button1 форма должна закрыться.
procedure TForm1.Button1Click(Sender:TObject);
begin
ShowMessage(‘работа завершена’);
Form1.Close; //закрытие главной формы завершает приложение(программу);
end;
procedure TForm1.Memo1MouseMove(Sender:TObject; Shift:TShiftState; X, Y:integer);
begin
Memo1.Color:=clYellow;
Memo1.Cursor:=– 3;
Button1.Top:=Memo1.Top+Memo1.Height+4; //кнопкаперемещаетсяпод Memo
end;
Замечание:
Параметр Sender обычно присутствует во всех обработчиках событий и является указателем на источник события.
Обзор компонентов страницы Standard
-
Label (класс TLabel) – предназначен для вывода текста, который не может быть отредактирован пользователем. Основное свойство Caption: string, в котором и содержится выводимый текст. Если установить свойство WordWrap=true, то текст может быть расположен в нескольких строках.
Пример: Label1.Caption:=’Список студентов’;
-
Edit (класс TEdit) – предназначен для отображения и ввода одной строки текста, который запоминается в свойстве Text:string. Свойство Modified:boolean определяет, изменялся ли текст компонента. Для ограничения длины строки нужно присвоить свойству MaxLength:integer требуемое значение. Компонент Edit можно использовать для ввода пароля, если свойству PasswordChar присвоить значение символа, который будет отображаться при вводе пароля (например «*»).
Пример: var Year : integer;
Edit1.MaxLength:=4;
Year:=StrToInt(Edit1.Text);
-
Memo (класс TMemo) – редактор текста.
Основные свойства: Text: string – содержит весь текст редактора;
Lines: string – массив, каждый элемент которого содержит строку редактора;
Count: integer – количество строк текста в редакторе;
Пример: Вывести в файл, связанный с файловой переменной F, все строки компонента Memo
Fori:=0 toMemo1.Lines.Count– 1 do //нумерация строк в Memo начинается с нуля
Writeln(Memo1.Lines[1]); //F– файловая переменная
Каждый элемент массива Lines относится к классу Tstrings.
Методы_класса'>Методы класса Tstrings
Function Add(S: string):integer; – добавляет строку в конец редактора, возвращает номер строки.
Procedure Append(S: string); – добавляет строку в конец редактора.
Procedure Delete(I: integer); – удаляет строку с номером I.
Procedure Insert(I: integer, S: string); – добавляет строку S перед строкой с номером I.
Procedure LoadFromFile(Fname: string); – загружает текст из внешнего файла с именем Fname.
Procedure SaveToFile(Fname: string); – сохраняет текст из редактора во внешний файл с именем Fname.
Примеры:
{в Memo добавляется строка, взятая из строки Edit1}
Memo1.Lines.Append(‘Студент’+Edit1.Text);
Memo1.Lines.SaveToFile(‘c:\spisok.txt’); \\ всестроки Memo сохраняютсявфайле
Методыкласса TMemo
Procedure CutToClipBoard; – записывает в буфер обмена ClipBoard выделенный текст.
Procedure CopyToClipBoard; – копирует в буфер обмена выделенный текст.
Procedure PasteFromClipBoard; – вставляет текст из буфера обмена.
Procedure Clear; – очищает содержимое редактора.
Пример:
Memo1.Clear; //очищается все содержимое редактора
-
Button (класс TButton) – стандартная кнопка. Название кнопки указывается в свойстве Caption. Главное событие для кнопки – OnClick. -
ScrollBar (класс TScrollBar) – полоса прокрутки, может использоваться для управления непрерывно изменяемой величины. Основные свойства:
Position: integer – текущее положение бегунка на полосе прокрутки;
Kind: (sbHorizontal, sbVertical) – положение компонента: горизонтальное или вертикальное;
Min,max: integer – диапазон полосы прокрутки, то есть в каких пределах может изменяться свойство Position.
Пример:
Memo1.Width:=ScrollBar1.Position; //ширина компонента Memo меняется при движении бегунка ScrollBar1
-
ListBox (класс TListBox) – развернутый список элементов.
Основные свойства:
Items: string – массив, в каждом элементе которого хранится элемент списка. Пусть Items – потомок класса Tstrings, то ему доступны все методы этого класса.
Пример:
ListBox1.Items.Insert(3,Edit1.Text); // после третьей строки списка будет вставлен текст из строки Edit1
ItemIndex:integer – номер выбранного элемента в списке;
Count:integer – количество элементов списка;
MultiSelect:Boolean – возможность одновременного выбора нескольких элементов;