Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 8.4.docx
Скачиваний:
4
Добавлен:
25.08.2019
Размер:
51.45 Кб
Скачать

2. Компоненты tTabControl, tPageControl.

TTabControl - набор закладок. Каждая закладка представляет собой прямоугольное поле с надписью и/или текстом. Выбор той или иной закладки распознается программой и используется для управления содержимым окна.

Свойство Tabs определяет названия и количество закладок. Событие OnChangc возникает при выборе новой закладки и позволяет управлять содержимым окна компонента. Свойство Tablndex определяет индекс выбранной закладки (начало - 0).

Пример: Краткий словарь.

Компонент TabControl занимает всю клиентскую часть формы (Align = alClient) и является контейнером для компонента ТМето. В зависимости от выбранной закладки в компонент ТМето загружается тот или иной файл, содержащий текстовую информацию.

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

procedure TForm 1 .TabControl 1 Change(Sender: TObject);

Var FileName : String[10];

Begin

// Формируется имя файла в соответствии с номером закладки FileName := 'd:\19po\FFF' + IntToStr(TabControl 1 .Tablndex)+ '.txt'; Memol. Lines. LoadFromFile(FileName); end;

TpagcControl - набор панелей с закладками. Каждая панель может содержать свой набор интерфейсных элементов и выбирается щелчком по связанной с ней закладке.

Новая страница добавляется командой New Page из контекстного меню. Для размещения объектов на страницы вкладок необходимо выбрать нужную страницу (но не объект PageControl) при помощи щелчка на ее клиентской части.

Пример: Разместить на первой странице кнопку, на второй - текстовое поле. При щелчке на кнопку в текстовом поле отображается строка «Привет!». Обработчик события On Click

procedureTForml.ButtonlClick(Sender: TObject); begin

editl .Text:-Привет!'; pagecontrol1.ActivePageInd x:=1;

end;

Свойства объекта:

Свойство

Назначение

ActivePagelndex

содержит номер открытой страницы (нумерация начинается с 0)

HotTrack

имеет значение True, если текст корешка при наведении указателя выделяете: ярким цветом.

Images

список картинок, которые отображаются на корешках вместе с текстом.

MultiLine

имеет значение True, если корешки разрешено отображать в несколько строк.

ScrollOpposite

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

Style

стиль объекта.

TabHeight

высота корешка в пикселях.

TabPosition

определяет, где отображаются корешки.

TabWidth

ширина корешка в пикселях.

При работе с компонентом TpageControl имеется возможность добавления к нему новых страниц во время работы программы (например, при нажатии кнопки).

procedure TForml.Button2Click(Sender: TObject);

var T:TtabSheet;

begin

t:=TtabSheet.Create(Self); T.Caption:=’Новая страница';

T.PageControl:= PageControl1;

end;

3. Компонент tRichEdit.

Основная особенность данного компонента - это возможность форматирования отдельных абзацев. Такое форматирование выполняется на основе 2 свойств:

Paragraph:

Aligment - выравнивание (taleftJustify - по левому краю, taCenter - по центру, tarightJustify - по правому краю).

Numbering превращение текста в список.

SelAttributes:

Color - цвет;

Size - размер;

Height - высота;

Style - стиль.

Пример: Расположить на форме панель редактирования и 2 кнопки. По нажатии на 1 кнопку выделенный текст выравнивается по центру и оформляется списком, по щелчку на 2 кнопку выделенный текст становится полужирным, увеличивается в размере, оформляется шрифтом Courier и красным цветом.

Свойство Lines позволит ввести начальное содержимое панели редактора.

procedure TForml.ButtonlClick(Sender: TObject); begin

with richeditl do begin

Paragraph.Numbering:=nsBullet;

Paragraph. Alignment:=taCenter;

end;

end;

procedure TForml.Button2Click(Sender: TObject);

begin

with richeditl.SelAttributes do

begin

color.=clred;

style:=[fsBold];

Size:=20;

Name:=’Courier’;

end;

end;

Для сохранения данных, содержащихся в компоненте, надо значение свойства PlainText сделать равным False.

piocedure TFonnl.Button3Ciick(Sender: TObject); begin

richeditl .PlainText:=false;

richeditl.Lines.SaveToFile('d:\19po\l .rtf);

end;