|
제가 어떤 클래스를 생성해서 그 안에 Timer를 두었습니다.
__fastcall THello::THello(TComponent* Owner)
: TComponent(Owner)
{
...
DeferedTransferTimer = new TTimer(this);
DeferedTransferTimer->Interval = 3000;
DeferedTransferTimer->OnTimer = OnDeferedTransferTimer;
DeferedTransferTimer->Enabled = false;
}
위 처럼 Hello라는 클래스를 생성하고 생성자에 Timer의 설정을 해두면 타이머에 설정된
OnDeferedTransferTimer() 함수가 제대로 실행 됩니다.
그러나 생성자에서 말고 어떤 루프를 돌다가 IF문에 걸렸을 경우 아래와 같은 DeferedTransfer() 함수를 들어가게 되면
OnDeferedTransferTimer() 함수가 제대로 실행 되지 않습니다.
void __fastcall THello::DeferedTransfer()
{
if (DeferedTransferTimer == NULL)
DeferedTransferTimer = new TTimer(this);
DeferedTransferTimer->Interval = 3000;
DeferedTransferTimer->OnTimer = OnDeferedTransferTimer;
DeferedTransferTimer->Enabled = true;
}
타이머 설정을 생성자에서 하지 않고 특정 함수를 콜할 경우 설정되게 하는방법은 없습니까???
아님 어떤 다른 방법이 있습니까???
고수님들 알켜주십시요. ^^
|