Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: CL | DM;

Вниз

Проблема с таймером   Найти похожие ветки 

 
Victor_   (2003-02-01 09:40) [0]

Здравствуйте все

Есть у меня конструкция вида:
[CODE]
type myThread = class (TThread)
protected
procedure Execute; override;
public
function Calc:Extended;
( str:String) Здравствуйте все

Есть у меня конструкция вида:
[CODE]
type myThread = class (TThread)
protected
procedure Execute; override;
public
function Calc:Extended;
constructor Create(str:String);
end;

constructor myThread.Create(str:string);
begin
SetTimer(Window, 0, 100,@Self.Calc);
inherited Create(false);
end;
[/CODE]
на SetTimer(Window, 0, 100,@Self.Calc); получаю ошибку

как решить проблему?

Предотвращая вопросы что данная конструкция должна делать:
Процедура Calc потока должна вызываться n раз в секунду.
ОЧЕНЬ желательно чтобы это делалось самим потоком

Заранее спасибо


 
Kladov   (2003-02-01 10:59) [1]

Не надо наследовать объект от TThread в KOL. Просто создайте эземпляр, и сообщите ему метод, который выполнится в OnExecute. В этом методе в цикле используйте Sleep(1000), чтобы цикл выполнялся раз в секунду. Вообще, лучше делать так:


N := 0;
while not WantStop do
begin
Sleep(100);
Inc( N );
if N mod 10 = 0 then
begin
{ код, который выполняется раз в секунду }
end;
end;
Result := 0;



Страницы: 1 вся ветка

Текущий архив: 2003.10.13;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.025 c
9-40228
APanyovin
2003-04-10 11:02
2003.10.13
Оптимальное хранилище для динамических массивов


7-40687
mox
2003-07-29 15:38
2003.10.13
Как можно запустить программу до старта Windows?


14-40604
Прохожий
2003-09-24 12:59
2003.10.13
Проблема с деструктором потока


14-40659
Dmitriy O.
2003-09-23 12:52
2003.10.13
Вопрос о физическом виде хранения данных


14-40628
Zhouck
2003-09-24 15:30
2003.10.13
IPC+RPC+Windows