문제

Windows Mobile Custom SIP를 만들고 사용자가 키보드의 버튼 위로 "호버"를 누르거나 "호버"를 눌러 :: getdc (null)를 사용하여 화면의 DC에 해당 선택된 이미지 (iPhone-esque)를 그립니다. Win32 C ++에서 개발되었습니다.

내 문제는 이전에 그려진 키를 지우면서 화면을 다시 칠할 수 없다는 것입니다. 나는 그것을 강요하기 위해 내가 생각할 수있는 모든 것을 시도했다 ::: redrawwindow ()는 null 또는 get ..window 기능을 HWND로 기능하고 모든 플래그 콤보 (Invalidate | Updatenow | Erasenow | 모든 사람 등). 나는 또한 다음을 사용하여 RELG을 무효화하고 :: getActiveWindow 및 :: getforegroundwindow, :: getDesktopwindow 등을 사용하여 기본 앱의 리페인을 강요하려고 시도했습니다. 내 Windows 모바일 장치에서 사용합니다. 아무도 아이디어가 있습니까? 모든 도움은 대단히 감사하겠습니다.

딜레마를 설명하기 위해 스크린 샷을 포함 시켰습니다.

스크린 샷 전에
스크린 샷 후

http://img13.imageshack.us/img13/9861/cezoom1.png 이전 http://img3.imageshack.us/img3/7481/cezoom2.png 이후

미리 감사드립니다!

도움이 되었습니까?

해결책

배경 DC에 그리기보다는 임시 창을 만들어서 그 안으로 그리지 않겠습니까? 창을 파괴하면 배경이 자동으로 다시 칠해야합니다.

나는 Windows Mobile을 모르기 때문에 단지 추측하고 있지만 Windows가 DC에 마지막으로 끌어온 것을 캐싱하고 창을 무효화 할 때마다 다시 인쇄하는 것일 수 있습니다.

다른 팁

화면 HWND에서 유효하지 않은 것을 시도해 보셨습니까?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top