Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Pascal / Delphi / Справочник по компонентам Delphi.doc
Скачиваний:
146
Добавлен:
02.05.2014
Размер:
1 Mб
Скачать

Компонент tScrollBox

TObject-^TPersistent->TCornponent->TControl-”TWinControl->.

->TScrollingWinControl—”TScrollBox

Модуль FORMS

Страница Палитры компонентов Additional

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

Указатели на горизонтальную и вертикальную полосы прокрутки являются свойствами компонента:

(Pb) property'HorzScrollBar: TControlScrollBar;

(Р1з) property VertScrollBar: TControlScrollBar;

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

Если свойство

(Pb) property AutoScroll: Boolean;

установлено в True, пара полос прокрутки сама определяет требуемый диапазон изменения (Range), исходя из расположения, размеров и способа выравнивания всех дочерних элементов управления. При этом метод:

procedure ScrollInView(AControl: TControl);

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

Стиль обрамления компонента определяется свойством:

(Pb) property BorderStyle: TBorderStyle;

При изменении размеров компонента возникает событие:

(Pb) property OnResize: TNotifyEvent;

Рассмотрим свойства класса TControlScrollBar. Это полоса прокрутки, обяза­тельно принадлежащая какому-либо оконному элементу управления. Компо­нент этого типа не должен в явном виде создаваться пользователем, т. к. пара полос является составной частью компонента TScrollBox, а также формы TForm. Но зачастую бывает необходим доступ к свойствам полосы:

(Ro) property Kind: TScrollBarKind; TScrollBarKind = (sbHorizontal, sbVertical);

Определяет направление полосы про­крутки.

(Pb) property Margin: Word;

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

IPb) property Increment: TScrollBarInc; TScrollBarInc = 1..32767;

Содержит минимальную единицу прира­щения при прокрутке.

(Pb) property Position: Integer;

Содержит текущее положение бегунка. Это и следующее свойства изменяются системой, например, при перемещении бегунка, при смене фокуса у элементов и при изменении размеров содержащего полосу компонента.

(Pbi property Range: Integer;

Определяет диапазон изменения положе­ния бегунка.

(Ro) property ScrollPos: Integer;

Возвращает положение бегунка Position, если он видим. В противном случае свойство равно 0.

Компоненты — стандартные диалоговые окна Windows

В Windows, начиная с версии 3.1, появилась библиотека стандартных диало­говых окон COMMDLG.DLL, которая позволила заменить вызовом функций программирование рутинных операций в типовых случаях взаимодействия с пользователем. К этим случаям относятся выбор имени файла для чтения и записи, выбор цвета или шрифта, поиск и замена текста, настройка принтера и параметров печати. В Delphi предусмотрены компоненты, представляющие собой оболочку для этих стандартных диалогов.

Поместив компоненты-диалоги на форму, вы освобождаетесь от необходимости вызывать их конструкторы и деструкторы. Все использование этих компонентов укладывается в трехэтапную схему:

1. Настройка параметров диалога, во время которой устанавливаются те или иные возможности. У всех диалогов для этого предусмотрено свойство Options, но у некоторых есть и дополнительные свойства.

2. Вызов метода Execute, который показывает диалоговое окно на экране и инициирует взаимодействие с пользователем. Execute является функцией:

он возвращает True, если пользователь подтвердил ввод значения (т. е. нажал кнопку ОК на экране или клавишу <Enter> на клавиатуре) и False, если он отказался от выбора (т. е. нажал кнопку Cancel или клавишу <Esc>).

3. В случае положительного ответа — чтение установленных значений в пред­ставляющем их свойстве (свойствах).

Примечание

Несколько отличается принцип взаимодействия в диалогах TFindDialog и TReplaceDialog, где нажатие кнопки подтверждения (Find и Replace соот­ветственно) инициирует событие, которое пользователь должен обработать.

По этой схеме и будет строиться описание компонентов. Естественно, метод Execute при этом опущен. Кроме того, общим для диалогов является свойство HelpContext. При нажатии кнопки Help вызывается система помощи именно с этим контекстом.

Соседние файлы в папке Delphi