우리는 Delphi 2007 응용 프로그램을 보유하고 있으며 최근 Windows Aero의 향상된 지원을 위해 MainFormOnTaskBar를 활성화했습니다. 그러나 클릭 할 때 기본 폼이 모든 자식 폼의 맨 위에 오지 않기 때문에 다음 코드를 추가했습니다. 이러한Delphi Application Main form 일시적으로 앞쪽으로 튀기기
procedure TBaseForm.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;
Params.WndParent := 0;
end;
한 부작용 자식 폼에 Alt 키를 + 키 핫키를 누르면 다시 그 특정 단축키를 전면에 기본 폼 제스처를 처리하고 있지 않는 점이다. 핫키가 처리되면 핫키가 삼켜 졌기 때문에이 동작이 발생하지 않습니다.
다른 누구도이 동작을 경험 했습니까? 해결 방법을 조언 할 수 있습니다. 또 다른 형태가 활성화되어있는 경우에도 메인 폼의 메뉴에서 메뉴 항목을 선택할 수 있도록
감사
'MainFormOnTaskbar'가 true 일 때처럼'CreateParams()'를 오버라이드 할 필요가 없습니다. 기본 구현은 이미 동일한 값을 설정합니다. 'MainForm'을 클릭하면 클릭 할 때 맨 위로 가져와야합니다. 이는 정상적인 윈도우 동작입니다. –
@Remy - MainFormOnTaskbar가 true 일 때 모든 보조 양식은 기본 양식에 의해 소유됩니다. 이는 주 양식이 2 차 양식 앞에 오지 못하게합니다. –
다른 문제도 발생할 가능성이 큽니다. 하나는 [여기] (http://qc.embarcadero.com/wc/qcmain.aspx?d=49410) 해결 방법 섹션에서 언급했다. 아마 다른 사람들도 ... –