type TForm1 = class(TForm) Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin Timer1.Interval := 1000; // 1c Timer1.Enabled := true; end;
procedure TForm1.Timer1Timer(Sender: TObject); begin Form1.Caption := FormatDateTime('hh:mm:ss', Now); end;
end.
Egor Vladimirovich
19.12.2006 20:14
Спсибо klem4. Что то вроде такого,но надо сделать свой компанент. Что бы его бросаешь но форму,жмеш Ф9 и сразу в окошке появлялось системное время,например использовать Tlabel. А твой компанент например можно увидеть в панели-закладке standart.
klem4
19.12.2006 20:23
Зачем свой-то ... TTimer на вкладке System находится ...
Egor Vladimirovich
20.12.2006 1:27
Цитата(klem4 @ 19.12.2006 16:23)
Зачем свой-то ... TTimer на вкладке System находится ...
В этом и заключаеться задание,именно свой компанент!
klem4
20.12.2006 2:41
Тоесть нужено создать и зарегистрировать в делфи свой собственный компонент (например наследник TLabel) который будет постоянно отображать системное время ?
Egor Vladimirovich
20.12.2006 21:24
Цитата(klem4 @ 19.12.2006 22:41)
Тоесть нужено создать и зарегистрировать в делфи свой собственный компонент (например наследник TLabel) который будет постоянно отображать системное время ?
Так точно! Поможешь?!
klem4
20.12.2006 22:45
В общем примерно это должно выглядить вот так, но почему-то при запуске программы с такой компонентой возникает ошибка, хотя кодга в Design mode кидаю этот лейбл на форму он уже начинает отображать текущее время, а вот при запуске программы выдает class TTimer not found ... Что не верно ?
procedure TTimerLabel.MyOnTimer(Sender: TObject); begin Caption := FormatDateTime('hh:mm:ss', Now); end;
end.
Egor Vladimirovich
20.12.2006 23:41
Спасибо klem4!
klem4
20.12.2006 23:58
Egor Vladimirovich , да незачто пока, не работает ведь ...
hiv
21.12.2006 14:31
Цитата(klem4 @ 20.12.2006 19:58)
Egor Vladimirovich , да незачто пока, не работает ведь ...
А что не работает? К стати надо бы и деструктор переопределить...
destructor TTimerLabel.Destroy; begin fTimer.Enabled := false; fTimer.Free; inherited Destroy; end;
klem4
21.12.2006 18:34
Цитата
А что не работает?
hiv, а ты зарегистрировал компонент и в тестовой программе все ок ?
hiv
21.12.2006 18:52
Вроде нашел последнее отличие моего варианта:
fTimer := TTimer.Create(Self);
PS: У меня все ок, только не регится в группе Standard (вернее регится но не показывается в списке), в любой со своим названием без проблем...
klem4
21.12.2006 19:24
Цитата
fTimer := TTimer.Create(Self);
Вот оно Я тоже хотел сделать именно это по задумке но не знал что написать, пробовал this но такого нет, а надо было self
Egor Vladimirovich
26.12.2006 20:24
Цитата(klem4 @ 21.12.2006 15:24)
Вот оно Я тоже хотел сделать именно это по задумке но не знал что написать, пробовал this но такого нет, а надо было self
klem4 от вашего первого варианта нашел как запустить,на форме появлялся сам клмпанент Ttimer(часики)!.Удалил эти часы,все откомпилировалось. thx за помощь!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.