Урок 2 Компоненты.Основные св-ва TLabel, TMemo
10-Oct-2005
Сегодня мы познакомимся с основными св-вами компонентов TMemo, TLabel.Многие
из них можно будет применить к другим визуальным компонентам .
Приступим, найдите на панели сверху вкладку Standart и киньте на форму Button,
Label, Memo.
Св-ва TLabel:
Label 1->Caption="надпись"; //надпись на Label1
Label1->Enabled=true; //делает надпись доступной или недоступной(становится
серым цветом)
Label1->Color=clBlack; //придаёт чёрный цвет Label'у
Label1->Font->Color=clWindowText; //цвет текста
Label1->Font->Style=fsBold; // делает текст жирным, нажмите на
Label и посмотрите в Object Inspector все св-ва и варианты их значений для форматирования
текста.
далее будут просто св-ва и их описания:
Align - занимаемая область нужно для выравнивания
при изменениях размеров родителя (например формы)
Alignment - выравнивание
текста лево право
Anchors - используется при изменении размеров родителя (например
формы)
AutoSize - если true то длинный текст будет обрезан
Constraints - используется для задания максимальных и минимальных
размеров
Cursor - вы можете выбрать курсор при наведении на компонент
он будет изменяться
Layout - выравнивание текста верх низ
Name - имя компонента
ShowAccelChar - если true тогда любой символ за & будет
подчёркнут
Tag - поочерёдность при перемешении табом
Transparent - если true затемняет собой другие элементы
Следующие 6 свойств характерны практически для всех
визуальных компонент.
Label1->Top=50; //
Отступ от верха формы
Label1->Left=50; // Отступ от левой границы формы
Label1->Width=100;// ширина Label'а
Label1->Height=12; // высота Label'а
Label1->Visible=false; //делает Label невидимым
Label1->Hint="текст"; // текст надписи, появляющейся при
наведении мыши на компонент(чтобы он был виден, не забудьте указать Label1->ShowHint=true;)
Помимо свойств у каждого
компонента есть обработчик событий, т.е. можно сделать так что бы программа
совершала какие-нибудь операции.Допустим, при наведении на Label он меняет цвет
текста, размер или же совершаются действия над другими компонентами.Посмотрите
в Object Inspector вкладку Properities - там слева находится св-во, а справа
его значение, которое мы меняли программно в прошлых уроках.Правая вкладка -
Events - это события компонента Label1 на которые программа будет выполнять
те или иные действия.Чтобы прописать дейсвия для любого из событий - просто
кликните два раза по ячейке из второго столбика напротив нужного события.
Основные события компонента TLabel:
OnClick - шелчёк мыши на компоненте
OnDblClick - двойной шелчёк мыши на компоненте
OnMouseDown - нажатие клавиши мыши над компонентом
OnMouseUp - отжатие клавиши мыши над компонентом
OnMouseEnter - курсор мыши вошёл в область метки
OnMouseLeave - курсор мыши покинул область метки
OnMouseMove - курсор мыши перемещается над компонентом
Св-ва TMemo:
Memo1->BorderStyle=bsNone; //
убирает границы у компонента
Memo1->BorderWidth=2; //указывает ширину линии рамки в 2
пиксела
Memo1->Clt3D=false; //показывает\убираетт объёмность
Memo1->ReadOnly=false; // запрещает редактирование текста
в Memo1
Memo1->Scrollbars=ssNone; // наличие полос прокрутки
Memo1->WordWrap=false; // запретить перенос строк
Memo1->Lines->Add("1 строка"); // добавляет
строку "1 строка " в Memo1
Memo1->Lines->Delete(0); // удаляет 1 строку из Memo1(отсчёт
строк начинается с 0, т.е. порядковый номер первой строки будет 0)
Memo1->Lines->Strings[0]="Hello"; // Первая
строка заменяется на "Hello"
Memo1-> Lines->LoadFormFile("c:\\1.txt"); //
загружает в Memo1 файл 1.txt
Memo1-> Lines->SaveToFile("c:\\1.txt"); //
сохраняет текст из Memo1 в файл 1.txt
int i=Memo1->Lines->Count; // переменной типа int(целое)
присваивается количество строк в Memo1
Memo1->Clear(); // Удалить весь текст из Memo1;
Теперь попробуем использовать это в программе.Два раза щёлкните по Button.Далее попробуем изменять те или иные св-ва компонент программно, хотя это можно спокойно делать и в Object Inspektor.Напишите следующий код:
Memo1->Clear(); //очистка
от текста
Label1->Caption="My fauvorite director is Guy Ritchie"; //надпись на Label
Memo1->Lines->Add("Чуть ниже будет такая же надпись как и
у Label1");//добавляем строку
Memo1->Lines->Add(Label1->Caption);
Memo1->Ctl3D=false; //Объёмность убираем
Должно получится примерно так.Попробуйте потренироваться сами с изменениями
шрифтов, цвета, размеров и т.д. - если ни хера
ни получится - значит ты лох!
Если есть вопросы по этому материалу или вопросы в принципе, пишите на мыло, ответы постараюсь выложить в последующих уроках.
Author of article - MA F*CKA CREW 2005
www.builderhelper.3dn.ru
builder.helper@rambler.ru