2010-06-27 4 views
0

실행하는 데 다소 시간이 걸리는 비교적 복잡한 쿼리를 사용하여 파이어 버드 데이터베이스를 쿼리하고 있는데 사용자가 쿼리 진행 상황에 대한 피드백을 얻을 수 있다면 도움이 될 것이라고 생각했습니다. 나는 쿼리가 시작될 때 상태 표시 줄에 적절한 'please wait'메시지를 표시하고 쿼리가 데이터를 반환 할 때 상태 표시 줄을 지우려고합니다.쿼리 완료 메시지 표시

저는 TSQLDataSet, TDataSetProvider 및 TClientDataSet을 사용하고 있습니다. 어느 이벤트에서 쿼리가 끝났으며 데이터를 표시 할 준비가되었다는 메시지가 표시됩니까?

TIA, No'am는

답변

0

회상 해보니 유감스럽게도 답변이 매우 쉽고 이벤트와 관련이 없으므로이 질문을 게시했습니다. 여기 간단한 해결책이 있습니다.

statusbar1.simpletext:= 'Opening query'; 
qComplicated.open; 
statusbar1.simpletext:= ''; 

쿼리가 해당 데이터와 함께 반환되면 쿼리가 열린 후 명령문으로 이동하여 상태 표시 줄을 지 웁니다.

나는 답변 한 사람들에게 사과합니다.

+0

우리 모두에게 ... –

0

이 (메시지를 보여주는) 관련 UI이기 때문에, 나는 아마도 TClientDataSet의의 AfterOpen 이벤트를 사용할 수 있습니다.

2

TClientDataset의 BeforeExecute 및 AfterExecute 이벤트를 확인하십시오. 그것들은 당신이 필요로하는 것에 적합하게 보입니다.

쿼리가 처리되는 동안 UI가 응답해야하는 경우 ProcessMessagess를 보거나 별도의 스레드에서 쿼리를 실행하고 OnTerminate를 사용하여 검색된 데이터를 폼으로 셔틀 할 수 있습니다.