Невизуальные компоненты могут быть добавлены в класс формы как с помощью визуального конструктора форм, так и программно. Они, подобно визуальным компонентам -- элементам управления -- содержат свойства, методы и события, но не отображаются визуально.
Одним из невизуальных компонентов является таймер (имя класса TTimer). Его назначение -- запускать некоторую процедуру спустя каждый заданый промежуток времени, если он активен. Активностью таймера управляет его свойство Enabled логического типа, промежуток времени (в миллисекундах) задает свойство Interval целочисленного типа. Запускаемая процедура представляет из себя обработчик события OnTimer.
Следующая программа демонстрирует добавление компонента таймера на форму с помощью конструктора. При нажатии кнопки таймер активизируется и слово, введенное в поле ввода выводится в текстовое поле по буквам. Обратите внимание на необходимость введения переменной формыn, которая с каждым интервалом таймера возрастает на 1 и является номером очередной добавляемой буквы.
procedure TForm1.Button1Click(Sender: TObject);
begin
Label2.Caption := '';
n:=0;
Timer1.Enabled := True;
end;
//
//
procedure TForm1.Timer1Timer(Sender: TObject);
begin
n := n+1;
if n > length(Edit1.Text) then
Timer1.Enabled := False
else
Label2.Caption := Label2.Caption + Edit1.Text[n];
end;
Следующая программа демонстрирует алгоритм перевода целых чисел издесятичной системы в двоичную методом последовательного деления на 2. Таймер на форму добавляется программно; при добавлении задаются и все его свойства. Обработчик события OnTimer с каждым интервалом времени выполняет последующее деление и выводит на форму его результаты. По окончании последовательных делений таймер деактивизируется.