Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод2курс_прогр_конт.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.38 Mб
Скачать

Лекция № 19. Создание элементов справочной системы. Создание строки состояния. Создание подсказок.

1. StatusBar (Строка состояния).

Компонент Delphi  StatusBar (вкладка Win32) при размещении  на форме автоматически располагается в нижней части формы. Высота компонента StatusBar задается с помощью свойства Height, либо во время проектирования мышью. Если необходима одна большая панель, то в свойстве SimplePanel необходимо выставить значение TRUE, а текст, который должен выводиться, задать свойством  SimpleText.

В правом нижнем углу компонента отражается маленький треугольник, за это отвечает свойство SizeGrip. Он визуально показывает, что с помощью мыши, в этом месте, можно форму изменять в горизонтальном и вертикальном направлении.

Свойство Font задает шрифт и его характеристику.

Если строка состояния содержит более одной панели, то для работы необходимо вызвать редактор панелей. Его можно вызвать тремя способами: двойным щелчком на компоненте StatusBar,  из Инспектора Объектов кнопкой с многоточием рядом свойства Panels,  или из контекстного меню выбрав команду Panels Editor . С помощью редактора мы можем перемещаться по панелям, уничтожать существующие или добавлять новые. Главные свойства панелей:

  • Свойство Text - Надпись на панели.

  • Свойство Width - Ширина панели в пикселах .

  • Свойство Bevel - Вид панели.

  • Свойство Alignment - Выравнивание надписи на данной панели.

Расположим на форме компоненты StatusBar, Edit, Memo, Timer, ApplicationEvents, как на рисунке. Напишем свойство Hint для Edit и Memo, допустим Фамилия и общие сведения. Для компонента StatusBar создадим три панели.

Для первой панели, где у нас будет отображаться дата, ширину установим равную 60.  Компоненту  ApplicationEvents событию onHint создадим такой обработчик:

procedure TForm1.ApplicationEvents1Hint(Sender: TObject);

begin

StatusBar1.Panels[2].Text := Application.Hint;

end;

Он будет выводить подсказки элементов формы в третьей панели. Для события onTimer (для того чтобы время и дата выводились в первой и второй панели соответственно)  компонента Timer -

procedure TForm1.Timer1Timer(Sender: TObject);

begin

StatusBar1.Panels[0].text:=DateToStr(now);

StatusBar1.Panels[1].text:=TimeToStr(now);

end;

2. Использование в Delphi подсказок

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

Разместим на форме компонент Edit и в свойстве Hint напишем "Это наш компонент, мы сюда можем все написать". Свойство ShowHint устанавливаем в TRUE. Запустим проект клавишей F9. Задержим на мгновение мышь над компонентом Edit и увидим нашу подсказку на фоне желтого цвета, как на рисунке.

А как сделать фон подсказок другой, спросите Вы, все очень просто. Для этого разберем следующий пример.

Расположим Компоненты следующим образом, как на рисунке. Свойству формы ShowHint присвоим TRUE. Проследим, чтобы у всех компонентов свойство ParentShowHint было бы TRUE.

Теперь для каждого компонента напишем подсказку типа "Это компонент Edit" (для каждого компонента подсказка должна быть своей). Двойным щелчком на форме зайдем в обработчик формы Create и внесем туда следующие строки :

procedure TForm1.FormCreate (Sender: TObject);

b egin

Button1.Hint := 'Первая строка' + #13 + 'Вторая строка' + #13 + 'Третья строка';

Application.HintColor := clGrayText;

Application.HintPause := 250;

Application.HintHidePause := 5000;

end;

Первая строка задает кнопке Button1 новую подсказку, если до этого была задана подсказка в Инспекторе Объектов, то она игнорируется. Символ #13 разбивает строку подсказки на несколько "этажей". Свойство HintColor задает фон подсказок. Свойство HintPause - время до показа подсказки в миллисекундах (где 1000 - одна секунда), а свойство HintHidePause время показа подсказки.