Все видимые элементы имеют свойства
property Hint: String; property ShowHint: Boolean;
регулирующие появление и содержание ярлычка - небольшого справочного окна возле элемента, на котором остановился курсор. Ярлычки существенно облегчают начинающему пользователю знакомство с программным продуктом. Введение механизма ярлычков во все видимые компоненты легко решает проблему создания дружественного программного интерфейса в современном стиле.
Чтобы компонент смог показать ярлычок, нужно поместить текстовую строку в его свойство Hint и присвоить свойству showHint значение True. Обычно ярлычок содержит максимально лаконичный текст, чтобы не отнимать слишком большую площадь экрана. Вы можете дополнить этот текст развернутым сообщением в любом компоненте, который способен отображать текст. Как правило, это панель статуса, занимающая нижнюю часть формы. Чтобы отобразить <<длинное' сообщение, его нужно прежде всего поместить в строку Hint сразу после "короткого" и отделить обе части символом "[".
Например:
MyControl.Hint := 'Подсказка!Развернутое сообщение';
Далее, необходимо в самом начале программы (обычно в обработчике события Oncreate главной формы) указать программе метод, который будет обрабатывать событие onHint. Это событие возникает в момент появления ярлычка и предназначено для отображения длинного сообщения, которое метод-обработчик может получить в свойстве Hint глобального объекта Application.
Например:
MyControl.Hint := 'Подсказка!Развернутое сообщение';
Далее, необходимо в самом начале программы (обычно в обработчике события Oncreate главной формы) указать программе метод, который будет обрабатывать событие onHint. Это событие возникает в момент появления ярлычка и предназначено для отображения длинного сообщения, которое метод-обработчик может получить в свойстве Hint глобального объекта Application.
Например:
type TFormI= class (TForm) pnStatus: TPanel; {Панель для отображения длинной части Hint}
public // Объявляем метод-обработчик события OnHint: procedure ShowLongHint(Sender: TObject); end;
procedure TFormI.ShowLongHint(Sender: TObject); {Этот обработчик помещает на панель pnStatus длинную часть Hint} begin pnStatus.Caption := Application.Hint; end;
procedure TFormI.FormCreate(Sender: TObject) ; // Метод определяет свойство OnHint объекта-программы begin Application.OnHint := ShowLongHint; end ;
Обратите внимание: обработчиком события OnHint должен быть метод класса, а не обычная процедура. Вот почему в предыдущем примере в секцию public класса TForm1 вставлено описание метода ShowLongHint.
И еще одно замечание. Обычно свойство Hint у компонента устанавливается на этапе конструирования формы. В этом случае вы можете создать только однострочный ярлычок. Если же установить свойство Hint на этапе прогона, вы сможете вставить в символьную строку разделители EOLN и таким способом создать многострочный ярлычок:
bbClose.Hint := 'Эта кнопка'#13'завершает работу '#13'программы';
Следующие свойства глобального объекта-программы Application регулируют цвет и время появления ярлычка:
property HintColor: TColor; | Определяет цвет фона ярлычка | property HintHidePause: Integer; | Определяет длительность показа ярлычка в миллисекундах. По умолчанию равно 2500 (2,5 секунды). Чтобы ярлычок вообще не убирался, установите значение -1 | property HintPause: Integer; | Определяет паузу в миллисекундах после остановки указателя мыши и перед появлением ярлычка. По умолчанию равно 500 | property HintShortPause: Integer; | Определяет паузу перед появлением ярлычка при переходе с одного компонента с заданным свойством Hint на другой такой же. По умолчанию равно 50 |
Все видимые компоненты содержат свойство
property HelpContext: Integer;
с помощью которого компонент привязывается к контекстно-чувствительной справочной службе. В это свойство следует поместить идентификатор раздела Help-файла, который (раздел) будет автоматически показываться в окне встроенной помощи после нажатия кнопки F1.
У многих видимых компонентов имеется свойство
property PopupMenu: TPopupMenu;
определяющее вспомогательное меню. Это меню вызывается нажатием правой кнопки мыши в момент, когда указатель находится над компонентом.
8 8 8
| |