Q&A

  • 비베의 DoEvents같은 프로시져가 있는지요...?
용량이 큰파일을 처리하다 보니
루프가 끝날 때까지 화면 갱신이 안되더군요.
비베에서는 DoEvents 문을 써서 처리하던데..
델파이에도 이런 프로셔져나 펑션이 있는지요.
아니면 처리할 수 있는 다른 방법이 있는지...
한수 지도 부탁드립니다.
3  COMMENTS
  • Profile
    백록화 2002.05.22 10:08
    yo`

    안녕하세요!! 백록화 입니다. :)

    음...글쎄요..잘모르겟지만, 콤포넌트마다 지원해주는게 있고 그럴껍니다. 오브젝트 인스펙터에서 이벤트를 보시면 알겟지요..

    아니면...루프 중간에  Application.ProcessMessages 같은걸 써보시죠..글쿠 대부분 콤포에 Refresh같은 메소드가 지원되므로 이것을 같이 사용하는것도 방법입니다.

    그럼 이만...후다다다다다다다닥~

    always hard and heavy time, bang your head...
    written by crazy 'ripper' rocka.

  • Profile
    ㉯㉰감자 2002.05.22 18:32
    VB의 doEvents와 동일한것은

    Application.ProcessMessages 입니다.

    이 명령이 실행되면 윈도우의 이벤트, 메세지등을 OS가 처리할 수 있게 되죠

    이벤트등이 발생 안하면 (특히 무한루프에서 빠르게 무언가 작업을 하고 있을때 ) 폼이 움직이지도 않고 내용도 리플래쉬도 되지도 않죠...

    그것을 방지하기 위한 것입니다.

    그리고 doEvents나 Application.ProcessMessages 는 이벤트등을
    처리하는 것이라..항상 이 명령과 Sleep을 같이 넣어서 사용하십시오..

    VB:
    doevents
    sleep 1

    Delphi
    Application.ProcessMessages
    Sleep(1)

  • Profile
    양상훈 2002.05.22 18:30
    캄사!!