VCL 스타일에 매우 이상한 문제가 있습니다. 경우에 따라 사전 정의 된 스타일로 프로그램을 시작하거나 나중에 프로그램 창을 설정하면 프로그램 창 중 하나 또는 일부가 사라지기도합니다.Delphi XE2 VCL 스타일, 이상한 결함, 윈도우 보이지 않음
이것은 매우 임의적으로 발생합니다. 어쩌면 특정 윈도우가 아닌 10-20 회마다 한 번 발생합니다. 저는 런타임에 2 개의 양식을 열어 놓았습니다. 때로는 하나, 때로는 다른 양식이 있습니다.
이 경우 윈도우가 보이지 않거나, Visible 속성이 true이고, 윈도우 경계가 정확한 반면, 일부 속성을 검사합니다. Aero DWM 라이브 축소판을 통해 창을 표시하려고하면 .. 비어 있습니다. 그러나 창 DC를 캡처하는 경우, 마치 정상적으로 표시되는 것처럼 비트 맵을 얻습니다 (그리고 스타일이 적용되었습니다).
아무런 오류나 경고도 예외도 표시되지 않습니다. 아무 것도 보이지 않는 것 같습니다. 단지 창문이 없습니다. 미리보기를 보려고 마우스를 작업 표시 줄 단추 위로 가져 가면 상자가 표시되지만 비어 있습니다.
어떤 아이디어를 확인해야할까요?
편집 : 호출 RecreateWnd는 임시 해결 방법으로 문제를 해결하지만 다시 실패 할 수 있습니다.
추측, 그것은 필요 0으로 설정 된 것처럼
, 당신은 창 경계와 그 뒤에 내용을 얻을 것이다 RecourseWnd. 작업 표시 줄에 표시된 미리보기를 클릭하면 어떻게됩니까? –
아무 것도. 프로그램이 활성화되지만 아무 것도 표시되지 않습니다. 트레이 아이콘 메뉴를 통해 다른 스타일로 전환하면 다시 표시됩니다. 여기에 각각의 양식이 작업 표시 줄 미리보기를 통해 표시되지 않는 2 가지 경우가 있습니다. http://i.imgur.com/WT7KK.png http://i.imgur.com/gjClr.png 또한 DC에서 bitblt을 사용하면 스타일이 제대로 적용된 창을 캡처합니다. – hikari
RecreateWnd를 호출하면 문제가 해결되며, 시작시와 일시적 해결 방법으로 스타일을 변경 한 후에 호출합니다. – hikari