2013-03-15 4 views
8

많은 TEdit이있는 폼을 showModal과 함께 표시해야하지만 컨텍스트에 따라 TEdit에 포커스를 강제로 지정하고 싶지만 항상 동일하지는 않습니다. .폼이 표시되기 전에 구성 요소에 포커스를 강제하는 방법

ShowModal (양식이 활성화되지 않았기 때문에) 전에 SetFocus를 사용할 수 없으며 구성 요소 이름 또는 태그를 내 응용 프로그램에 사용하면 편리하지 않습니다. 아이디어가 있으십니까?

답변

17

목표를 달성하는 가장 간단한 방법은 양식의 ActiveControl 속성에 할당하는 것입니다. 양식을 표시하기 전에이 작업을 수행 할 수 있습니다. 양식을 나중에 표시하면 VCL 프레임 워크가 ActiveControl에 입력 포커스가 있는지 확인합니다. documentation에서

:

형태에 포커스가없는 경우, ActiveControl는 폼이 포커스를받을 때 포커스를받는 폼의 컨트롤입니다.