|
이렇게 한번해 보시죠.정석인지는 모릅니다.
DeleteAtom 어디서 끝나면 한번 더 해줘야 할것도 같은데..
아무튼 됩띠다.^^
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i=0;i<100000;i++){
Memo1->Lines->Add(i);
Application->ProcessMessages();
ATOM test;
test=INVALID_ATOM;
if(FindAtom("stop_loop")){
DeleteAtom(FindAtom("stop_loop"));
ShowMessage("i am stop");
break;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TTForm1::Button2Click(TObject *Sender)
{
AddAtom("stop_loop");
}
.끝.
인디오 님이 쓰신 글 :
: 안녕하세요... 요즘 들어 여기 자주 들어오게 되는군요...
: 다름이 아니라.. 루프를 돌면서 DB 에 내용을 입력을 하는 작업이 있는데요..
: 현재는 작업이 한번 시작하면 멈출수도 없고... 끝날때 까지 기다려야 하거든요....
: cancel 버튼을 만들어 봤는데.. 한번 시작하면 cancel 버튼이 눌러지지도 않는군요..
: 이런 루프 작업에서 작업을 멈출 수 있는 방법이 없을까요..?
:
: 전에는 파워빌더를 좀 했었는데.. 그때는 루프를 돌면서 메세지 큐를 검사할 수 있었는데..
: builder 에는 그런 기능이 없을까요... 고수님들의 한수 부탁 드립니다..
: 미리 감사드립니다.. 그럼 이만... (-.-) (__) 꾸벅~~
:
:
|