Вкладка Controls. Компонент TRxClock

   
На этом шаге мы рассмотрим компонент TRxClock.

   
Компонент TRxClock (рис.1) позволяет отображать время суток
в цифровом или аналоговом виде (вид отображения задается с помощью свойства
ShowMode).


Рис.1. Компонент TRxClock

   
При цифровом отображении формат времени задается комбинацией значений свойств
LeadingZero, TwelveHour и ShowSeconds.

   
Дополнительно имеется функция будильника. При установке значения AlarmEnabled
в True, при наступлении времени суток, заданного свойствами
AlarmHour, AlarmMinute и AlarmSecond,
происходит событие OnAlarm, в обработчике которого вы можете
произвести необходимые действия.

   
Рассмотрим свойства данного компонента:

Таблица 1. Свойства компонента TRxClock

СвойствоОписание
property ShowMode: TShowClock;Свойство управляет режимом отображения времени:

  • scDigital - цифровое отображение времени шрифтом,
    с заданным свойством Font (формат времени задается комбинацией
    значений свойств LeadingZero, TwelveHour
    и ShowSeconds).
  • scAnalog - аналоговый вид часов(свойство
    ShowSeconds определяет, будет ли показываться секундная стрелка,
    свойство DotsColor - цвет для точек, обозначающих часы).
type
TShowClock = (scDigital, scAnalog);
Тип служит для задания допустимых значений режима отображения
компонента TRxClock (значение свойства
ShowMode).
property LeadingZero: Boolean; Свойство определяет, будут ли добавляться лидирующие нули при
форматировании времени (только для значения часов), если задано цифровое
отображение часов (свойство ShowMode = scDigital).
property TwelveHour: Boolean; Свойство определяет, как будет форматироваться время, если задано
цифровое отображение часов (свойство ShowMode = scDigital):

  • TwelveHour = False (по умолчанию) - диапазон
    значений часов 0..23;
  • TwelveHour = True - часы принимают значения 1..12
    и при форматировании времени используются значения глобальных переменных
    модуля SysUtils TimeAMString и TimePMString.
property ShowSeconds: Boolean; Свойство задает, будут ли отображаться секунды при цифровом изображении
часов (при значении свойства ShowMode = scDigital) или
секундная стрелка - при аналоговом.
property DotsColor: TColor; Свойство задает цвет для точек, обозначающих часы. Имеет смысл при
значениях свойств ShowMode = scAnalog и Ctl3D = True.
property AlarmEnabled: Boolean; AlarmEnabled = True - при наступлении времени суток,
заданного свойствами AlarmHour, AlarmMinute и
AlarmSecond, происходит событие OnAlarm,
в обработчике которого вы можете произвести необходимые действия.
property AlarmHour: Byte; Свойство задает (совместно со значениями AlarmMinute
и AlarmSecond) время срабатывания "будильника",
т.е. время, в которое произойдет событие OnAlarm при
установке в True свойства AlarmEnabled.
property AlarmMinute: Byte; Свойство задает (совместно со значениями AlarmHour и
AlarmSecond) время срабатывания "будильника", т.е.
время, в которое произойдет событие OnAlarm при установке
в True свойства AlarmEnabled.
property AlarmSecond: Byte; Свойство задает (совместно со значениями AlarmHour и
AlarmMinute) время срабатывания "будильника", т.е.
время, в которое произойдет событие OnAlarm при установке в
True свойства AlarmEnabled.
property OnAlarm: TNotifyEvent; Событие OnAlarm происходит при наступлении времени
суток, заданного свойствами AlarmHour, AlarmMinute
и AlarmSecond, если свойство AlarmEnabled
установлено в значение True.

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

   
Поместим на форму компоненты RxClock1, RxLabel1,
RxLabel2 и RxSpeedButton1 (рис.2).


Рис.2. Форма с размещенными на ней компонентами
RxClock1 , RxLabel1 ,RxLabel2 и RxSpeedButton1

   
RxLabel1 (“Внешний вид”) – это надпись рядом с кнопкой
RxSpeedButton1. При нажатии на кнопку свойство
Caption данного компонента меняет свое значение
('scAnalog', 'scDigital') и внешний вид компонента
RxClock1 соответственно меняется
(scAnalog, scDigital).    

   
Когда реальное время становится равным значениям, заданным в свойствах
AlarmHour, AlarmMinute и
AlarmSecond.

   
Для компонента RxSpeedButton1 напишем обработчик события
OnClick:

procedure TForm1.RxSpeedButton1Click(Sender: TObject);
begin
    if  (RxSpeedButton1.Caption='scDigital') then
         begin
              RxSpeedButton1.Caption:='scAnalog';
              RxClock1.ShowMode:=scAnalog;
         end
       else
         begin
              RxSpeedButton1.Caption:='scDigital';
              RxClock1.ShowMode:=scDigital;
         end;
end;

   
Для компонента RxClock1 напишем обработчик события OnAlarm:

procedure TForm1.RxClock1Alarm(Sender: TObject);
begin
   for i:=1 to 10 do
         begin
             RxLabel2.Visible:=True;        //Компонент RxLabel2 становится видимым
             Form1.Color:=clLime;           //Цвет формы меняется на цвет clLime
             RxLabel2.Caption:='Вставай!!!'
         end;
end;

Работа программы показана на рис.3(а-в).


Рис.3а. Свойство ShowMode в значении scDigital


Рис.3б. Свойство ShowMode в значении scAnalog


Рис.3в. Сработал будильник

   
Текст этого примера можно взять здесь.

   
На следующем шаге мы рассмотрим компонент TAnimatedImage.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий