Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа1.doc
Скачиваний:
5
Добавлен:
06.11.2018
Размер:
229.89 Кб
Скачать
    1. Класс tEdit

Класс TEdit представляет из себя обычное поле для ввода текста. Соответствующий компонент расположен на вкладке Standard Палитры компонентов:

Для изучения свойств Edit'а расположите его на форме. Самое важное свойство для этого компонента - это свойсто Text. Разумеется, в нем хранится текст, введенный в наш Edit. Обратите внимание, что текст хранится именно как текст, и, если пользователь, скажем, введет в edit число 23, то оно будет хранится как строка "23", а не как число 23. Поэтому в такой строке содержится ошибка:

if Edit1.Text>0 then ShowMessage('Число положительное');

Для превращения строки в целое число надо использовать функцию StrToInt:

if StrToInt(Edit1.Text)>0 then ShowMessage('Число положительное');

Аналогично для записи числа в Edit надо использовать функцию IntToStr:

Edit1.Text:=IntToStr(22);

Из этой же серии относится и функции StrToFloat и FloatToStr.

Рассмотрим еще несколько свойств.

Свойство MaxLenght определяет максимальную длину вводимого текста. Если оно равно нулю (это значение по умолчанию), то длина текста не ограничена.

Из полезных свойств отметим также AutoSelect логического типа. Если оно установлено в true (а по умолчанию так оно и есть), то при получении фокуса нашим edit'ом весь текст в нем выделяется. Это может оказаться полезным, если пользователь скорей всего полностью заменит этот текст.

Из свойств отметим еще свойство PasswordChar. Оно понадобится при использовании нашего edit'а в качестве поля для ввода пароля. Это свойство позволяет задать символ для визуальной замены вводимых пользователем символов. Обычно в этом случае используется звездочка.

Из событий для этого компонента чаще всего используется событие OnChange, OnKeyDown, OnKeyPress и OnKeyUp. Первое из них возникает, естественно, при изменении текста в нашем edit'е, последующие три - при нажатии и отпускании клавиши. Вот как, например, можно использовать событие OnKeyPress для ограничения ввода только цифрами:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if not (Key in ['0'..'9']) then Key:=#0

end;

Edit понимает такие стандартные для Windows комбинации клавиш как Ctrl+C (для копирования текста в буфер), Ctrl+X (для вырезания текста), Ctrl+V (для вставки текста), Ctrl+Z (для отмены последнего действия).

    1. Класс tLabel

Этот компонент используется для отображения различных надписей на формах. Иконка для него находится на панели Standard Палитры компонентов:

Основное свойство для этого компонента - Caption. Именно оно и отвечает за надпись на нашем компоненте.

Вы можете задавать различные характеристики шрифта для нашего компонента (свойство Font). Для этого нажмите кнопочку с многоточием в строке со свойством Font Инспектора объектов. В частности, надпись можно сделать подчеркнутой и синей - как гиперссылку:

Можно написать и код для перехода на определенный сайт при щелчке на такой надписи.

У компонента TLabel имеется свойство AutoSize, которое отвечает за то, будет ли компонент автоматически изменять размер по горизонтали с изменением длины надписи. По умолчанию это свойство равно true. Еще имеется свойство WordWrap. Если установить значение этого свойства в true, а значение свойства AutoSize в false, то при увеличении длины надписи происходит перенос слов на новую строчку.

Для компонента TLabel есть еще одно неочевидное применение, а именно его можно использовать для получения доступа по горячим клавишам (комбинации типа Alt+W) к элементам, не имеющим свойства Caption. Рассмотрим, например, как можно с помощью label'а получить доступ к Edit'у (полю для ввода). Для этого расположите на форме label и edit, оставив их имена по умолчанию. Измените свойство Caption для Label1 в &Wrap. Свойство же FocusControl для компонента Label1 установите в Edit1:

Компилируйте проект (F9) и нажимайте Alt+W. Поле для редактирования Edit1 получит фокус:

Наряду с обычным label существуют и другие компоненты приблизительно с такой же функциональностью.