2014-10-17 4 views
1

델파이를 사용하는 동안 문제가 있습니다.UI 컨트롤의 자동 새로 고침

내 UI에는 레이블과 5 개의 botton이 있습니다. 5 개의 단추를 클릭하면 레이블 캡션에 영향을 줄 수있는 일부 상태가 변경 될 수 있습니다.

5 개 버튼의 OnClick 기능이 이미 구현되었습니다. 따라서 각 함수의 캡션을 변경하려면 코드를 추가해야합니다.

좋지 않습니다. 상태를 확인하는 동안 라벨이 자동으로 캡션을 변경하도록하는 방법은 무엇입니까? 벤처 캐피탈에서 레이블은 priodically 메시지를 알릴 수, 델파이 할 수 있습니까?

답변

3

조치, 조치 목록 또는 조치 관리자에 대해 OnUpdate 이벤트 핸들러를 사용하십시오. 이러한 이벤트는 메시지 루프가 사용자 입력 처리를 완료하고 유휴 상태가되면 시작됩니다. 라벨 캡션의 변경으로 이어지는 행위는 항상 사용자 입력의 결과이므로 사용자의 요구에 가장 적합합니다.

동일한 효과를 얻으려면 양식에 TApplicationEvents 구성 요소를 추가하고 해당 구성 요소의 OnIdle 이벤트에 대한 핸들러에서 레이블을 업데이트해야합니다.

+0

그러나 TLabel에는 작업 속성이 없습니다. – dltigles

+0

레이블에있을 필요는 없습니다. 버튼에 의미가 있습니다. –

+0

좋아, 내가 하나 만들고 버튼에 동작을 연결 했어. 괜찮아. 그러나 액션을 메인 폼에 연결하면 문제가 발생합니다. 하나씩 5 개의 라벨을 클릭하고 잠시 후 앱이 응답하지 않습니다. 그것은 중요한 메시지를 받아 들일 수 있지만, 마우스는 받아 들일 수 없습니다. – dltigles