Программирование в среде Delphi. Часть 2. Создание оконных приложений. Садовская О.Б. - 29 стр.

UptoLike

Составители: 

29
В диалоговом окне программы для выбора страны используется
список (ListBox). Для разрабатываемой программы наибольший инте-
рес представляют два свойства компонента ListBox: Items и Item
Index.
Свойство Items имеет тип TStrings и содержит элементы списка .
Список, выводимый в поле ListBox, может быть сформирован во вре -
мя создания формы или динамически, во время работы программы.
Для формирования списка во время создания формы приложения надо
после добавления в форму компонента ListBox в окне Object Inspector
выбрать свойство Items и щёлкнуть на кнопке редактора списка строк,
на которой изображены три точки. В появившемся диалоговом окне
StringListEditor (редактор списка строк) следует набрать список, помес-
тив каждый элемент списка на отдельной строке. Ввод очередного
элемента списка должен заканчиваться нажатием клавиши Enter. По-
сле ввода всех элементов списка нужно щёлкнуть на кнопке Ok.
Свойство Item Index во время работы программы содержит номер
выбранного элемента списка . Если ни один из элементов списка не
выбран, то значение Item Index равно минус единице . Ниже перечис-
лены компоненты формы с указанием предназначения .
Компонент (свойство Name) Предназначение
List Box 1 Выбор страны
Edit 1 Ввод веса в фунтах
Label 1,Label 2, Label 3 Вывод пояснительного текста
Label 4 Вывод результата пересчёта
Button 1 Активизация процедуры пересчёта.
procedure TForm1.Button1Click( Sender : TObject);
var funt , kg, k : real;
begin
case List Box1.Item Index of
0 : k:=0.4059;
1 : k:=0.453592;
2 : k:=0.56001;
3..5, 7 : k:=0.5;
6 : k:=0.31762
end;
funt:=StrToFloat(Edit1.Text);
kg:=k funt;
Label4.Caption:=Edit1.Text + фунт(а/ов) это +
FloatToStrF(kg, ffFixed,6,3) + кг ;
end;
                                         29
      В д иа логовом окн е програ м м ы д ля выб ора стра н ы использу ет ся
список (ListBox). Д ля ра зра б а т ыва ем ой програ м м ы н а иб ольш ий ин т е-
рес пред ст а вля ю т д ва свойст ва ком пон ен т а ListBox: Items и Item
Index.
      Свойст во Items им еет т ип TStrings и сод ерж ит э           лем ен ты списка .
Список, вывод им ый в поле ListBox, м ож ет б ыт ь сф орм ирова н во вре-
м я созд а н ия ф орм ы или д ин а м ически, во врем я ра б оты програ м м ы.
Д ля ф орм ирова н ия списка во врем я созд а н ия ф орм ы прилож ен ия н а д о
после д об а влен ия в ф орм у ком пон ен т а ListBox в окн е Object Inspector
выб ра т ь свойст во Items и щёлкн у т ь н а кн опке ред а кт ора списка строк,
н а которой изоб ра ж ен ы три т очки. В поя вивш ем ся д иа логовом окн е
StringListEditor (ред а кт ор списка ст рок) след у ет н а б ра т ь список, пом ес-
т ив ка ж д ый э   лем ен т списка н а от д ельн ой строке. В вод очеред н ого
э лем ен т а списка д олж ен за ка н чива т ься н а ж а тием кла виш и Enter. По-
сле ввод а всех э    лем ен тов списка н у ж н о щёлкн у т ь н а кн опке Ok.
      Свойст во Item Index во врем я ра б оты програ м м ы сод ерж ит н ом ер
выб ра н н ого э лем ен та списка . Е сли н и од ин из э       лем ен т ов списка н е
выб ра н , то зн а чен ие Item Index ра вн о м ин у с ед ин ице. Н иж е перечис-
лен ы ком пон ен т ы ф орм ы с у ка за н ием пред н а зн а чен ия .
         К ом пон ен т (свойство Name)               Пред н а зн а чен ие
        List Box 1                         В ыб ор ст ра н ы
        Edit 1                             В вод веса в ф у н т а х
        Label 1,Label 2, Label 3           В ывод поя сн ит ельн ого т екст а
        Label 4                            В ывод резу льт а т а пересчёта
        Button 1                           А кт ивиза ция процед у ры пересчёт а .
     procedure TForm1.Button1Click( Sender : TObject);
     var funt , kg, k : real;
     begin
     case List Box1.Item Index of
     0:                   k:=0.4059;
     1:                   k:=0.453592;
     2:                   k:=0.56001;
     3..5, 7 :            k:=0.5;
     6:                   k:=0.31762
     end;
     funt:=StrToFloat(Edit1.Text);
     kg:=k ∗ funt;
     Label4.Caption:=Edit1.Text + ′ ф у н т (а /ов) – э
                                                      то ′ +
     FloatToStrF(kg, ffFixed,6,3) + ′ кг ′;
     end;