Главная страница

Методичка по лабораторным Delphi. Протокол 11 Зав кафедрой А. А. Прихожий содержание лабораторная работа 1


Скачать 0.58 Mb.
НазваниеПротокол 11 Зав кафедрой А. А. Прихожий содержание лабораторная работа 1
АнкорМетодичка по лабораторным Delphi.doc
Дата04.09.2018
Размер0.58 Mb.
Формат файлаdoc
Имя файлаМетодичка по лабораторным Delphi.doc
ТипПротокол
#24057
страница3 из 10
1   2   3   4   5   6   7   8   9   10

Программу запишите в каталог Lab1(File/SaveProject as).
ЛАБОРАТОРНАЯ РАБОТА №2

ИСПОЛЬЗОВАНИЕ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ, РАСПОЛОЖЕННЫХ НА ПАНЕЛИ STANDARD. ИЗУЧЕНИЕ СВОЙСТВ И МЕТОДОВ ЭТИХ КОМПОНЕНТОВ.
Теоретические сведения

На панели Standard расположены:

TLabel - компонент для представления статических текстов. Используется для представления поясняющих действий.

TEdit - однострочный редактор. С его помощью можно вводить и/или отображать достаточно длинные текстовые строки.

TMemo - многострочный редактор, предназначенный для ввода, редактирования и/или отображения достаточно длинного текста.

TButton - кнопка, использующаяся для управления программами.

TCheckBox - независимый переключатель для принятия решения типа Да/Нет.

TRadioButton - зависимый переключатель, предназначенный для выбора одного из нескольких взаимоисключающих решений.

TListBox - стандартный список выбора, с помощью которого пользователь может выбрать один или несколько элементов выбора.

TComboBox - комбинированный список выбора, представляющий собой комбинацию списка TListBox и редактора TEdit.

TScrollBar - полоса прокрутки, использующаяся для визуального управления значением числовой величины.

TGroupBox - прямоугольное окно с рамкой и текстом в разрыве рамки. Служит контейнером для размещения дочерних компонентов.

TRadioGroup - специальный контейнер, предназначенный для размещения зависимых переключателей.

TPanel - контейнер общего назначения.

Ход работы


  1. Загрузите систему визуального программирования Delphi.

  2. Откройте приложение, созданное на предыдущем занятии (Lab1).

  3. Список выбора ListBox1.

Установите на форму компонент ListBox1.

    1. Свойству Items задайте следующие значения: Фунт, Пуд, Унция, Драхм, Гран. Свойство Items (класс TString) хранит строки списка.

    2. Измените размер и цвет шрифта компонента ListBox1.

    3. Создайте обработчик события OnClick для компонента ListBox1. Событие OnClick происходит при выборе элемента в списке.

Обработчик события:

Procedure TForm1.ListBox1Click(Sender:TObject);

Begin

If (Edit1.Text=' ') or (ListBox1.ItemIndex <0) Then Exit;

x:= StrToFloat(Edit1.Text);

case ListBox1.ItemIndex of

0: y:= x/400;

1: y:= x/16380;

2: y:= x/28.35;

3: y:= x/28.35*16;

4: y:= 437.5*x/28.35;

end;

Memo1.Lines.Add(FormatFloat('#####.#####Грамм=',x)+ FormatFloat('#####.##### ', y) + ListBox1.Items[ListBox1.ItemIndex]);

Edit1.Clear;

Edit1.SetFocus;

End;

СвойствоItemIndex определяет номер выбранного элемента списка.

Метод Clear очищает содержимое компонента TEdit. Метод SetFocus устанавливает курсор в этот компонент.

Не забудьте описать X и Y.

4. Сохраните вашу работу в папку Lab2. Осуществите прогон программы (F9). Выполните несколько контрольных расчетов:

1234Грамм = 3,085 Фунт

1234Грамм = 0,07534 Пуд

1234Грамм = 43,52734 Унция

1234Грамм = 696,43739 Драхм

1234Грамм = 19043,20988 Гран

5. Свойство Anchors.

    1. В работающем приложении максимизируйте окно. Обратите внимание на то, что местоположение кнопки «Close» относительно левого края формы осталось прежним.

    2. Закройте приложение. Сделайте так, чтобы кнопка «Close» всегда оставалась в правом нижнем углу. Для этого используйте свойство Anchors. По умолчанию это свойство имеет значение [akTop, akLeft]. Присвоим этому свойству значение [akRight, akBottom]. Для этого в правой части строки свойства Anchors зададим: akTop – False; akLeft – False; akRight – True; akBottom – True.

    3. Осуществите прогон программы и проверьте, верно, ли Вы использовали свойство Anchors.

    4. Для того, чтобы размер нижней панели изменялся пропорционально размеру окна, присвойте свойству Anchors значение [akTop, akLeft, akRight, akBottom]. Запустите программу и Вы увидите, что при изменении размеров окна Panel1 тоже меняет свои размеры.

6. Компонент TRadioGroup.

    1. Добавьте к приложению компонент TRadioGroup. Свойству ItemIndex задайте значение 0. В Items ввести две строки: единичное значение, расчет для интервала значений.

    2. Добавьте на Panel2 еще одну метку Label2 (Caption-Конечное значение) и еще один редактор Edit2. Свойству Visible этих компонентов присвойте значение False. Это означает, что компоненты не будут видны на форме до тех пор, пока свойство Visible не станет равным True.

    3. Создайте обработчик OnClick для компонента TRadioGroup.

Procedure TForm1.RadioGroup1Click(Sender:TObject);

Begin

Case RadioGroup1.ItemIndex of

0: begin

Label1.Caption := ‘Введите значение веса в граммах’;

Edit2.Hide; Label2.Hide; End;

1: begin

Label1.Caption := ‘Начальное значение веса’;

Edit2.Show; Label2.Show; End; End; End;

Методы Show и Hide определяют видимость компонента на экране.

Внесите изменения в обработчик OnClick компонента ListBox1:

Procedure TForm1.ListBox1Click(Sender:TObject);

Begin

If (Edit1.Text =' ') or

(ListBox1.ItemIndex <0 ) then Exit;

Case RadioGroup1.ItemIndex of

1: begin

if (Edit2.Text=' ') then Exit;

X_nach:=StrToFloat(Edit1.Text);

X_kon:=StrToFloat(Edit2.Text);

D:= (X_kon –X_nach)/10; End;

0: begin

X_nach:=StrToFloat(Edit1.Text);

X_kon:=X_nach;

D:=1; End; End;

x:= X_nach;

while x <= X_kon do

begin

case ListBox1.ItemIndex of

0: y:= x/400;

1: y:= x/16380;

2: y:= x/28.35;

3: y:= x/28.35*16;

4: y:= 437.5*x/28.35; end;

Memo1.Lines.Add(FormatFloat('#####.#####Грамм=',x)+ FormatFloat('#####.#####',y) + ListBox1.Items[ListBox1.ItemIndex]);

x:= x + D;

end;

Edit1.Clear;

Edit1.SetFocus;

Edit2.Clear;

End;

Не забудьте описать переменные X_nach, X_kon, D.

    1. Для компонента Memo1 установите ScrollBars равным ssVertical. У многострочного редактора появилась линейка прокрутки.

    2. Осуществите прогон программы.

7. Компонент TGroupBox.

Установите на Panel1 компонент TGroupBox и задайте свойство Caption равным «Настройка экрана». С помощью этого компонента выделяется группа управляющих элементов, объединенных по функциональному назначению.

8. Компонент TCheckBox.

    1. Состояние этого компонента содержит свойство State: cbUnchecked – нет; cbChecked – да; cbGrayed – не знаю. Это свойство доступно как для чтения, так и для записи. Свойство Сhecked содержит выбор пользователя Да/Нет. Установите компонент TCheckBox (Caption-Шрифт) на контейнер TGroupBox.

    2. Создайте обработчик события OnClick для этих компонентов.

Procedure TForm1.CheckBox1Click(Sender:TObject);

Begin

If CheckBox1.State = cbChecked then

Memo1.Font.Style:=[fsItalic]

Else Memo1.Font.Style:=[];

End;

    1. Проверьте работу вновь установленных компонентов.

9. Компонент TScrollBar.

    1. Установите на Panel1 компонент TScrollBar. Этот компонент используется для визуального управления значением числовой величины. Его свойство Position содержит текущее значение числовой величины.

    2. Создайте обработчик OnScroll для этого компонента, Событие OnScroll возникает при любом изменении свойства Position.

Procedure Form1.ScrollBar1Scroll(Sender:TObject;ScrollCode:TScrollCode;

var ScrollPos: integer);

begin

x:= ScrollBar1.Position;

Edit1.Text:= FloatToStr(x);

RadioGroup1.ItemIndex :=0;

End;

В этом обработчике мы связали позицию ползунка линейки прокрутки со значением переменной х.

3. Для того чтобы установить фокус ввода в окно редактора в самом начале работы, создадим еще один обработчик события. Событие для формы OnActivate возникает в момент активизации окна (при получении формой фокуса ввода).

Procedure TForm1.FormActivate(Sender:TObject);

Begin

Edit1.SetFocus; End;

Минимизируйте окно Delphi и удалите все файлы из Вашего каталога Lab2.

Новые свойства, методы, события:

Свойства

Items

Хранит строки списка

ItemIndex

Определяет номер выбранного элемента списка

Checked

Содержит выбор пользователя Да/Нет в переключателе TCheckBox

State

Содержит состояние компонента: cbUnchecked – нет; cbChecked – да; cbGrayed – не знаю

Position,

Min, Max

Текущее, минимальное и максимальное значения числовой величины

ScrollBars

Определяет наличие линейки прокрутки

Visible

Определяет видимость компонента

Anchors

Определяет способ фиксирования дочернего компонента относительно границ своего родительского компонента

Методы


Clear

Очищает содержимое компонента

Show

Сделать компонент видимым

Hide

Сделать компонент невидимым

SetFocus

Устанавливает фокус ввода

События

OnScroll

Возникает при любом изменении свойства Position компонента TScrollBar

OnActivate

Возникает для формы в момент активизации окна (при получении формой фокуса ввода)
1   2   3   4   5   6   7   8   9   10


написать администратору сайта