문제

Compact Framework의 MainMenu 컨트롤에서 배경색을 변경하기위한 솔루션을 검색했으며, 내가 찾은 유일한 대답은 사용자 정의 컨트롤을 만들어야한다는 것입니다. 누구든지 이것에 대한 예제 코드가 있습니까?

도움이 되었습니까?

해결책

이 작업을 수행 할 방법이 없습니다.
당신은 아마 자신의 제어를 만들어야 할 것이라는 권리입니다.

이것은 어쨌든 응용 프로그램이 Windows CE와 Windows Mobile에서 진행하도록하기 위해 고려하고 있던 일이었습니다.
애플리케이션이 두 가지 모두에서 작동해야 할 때 메뉴를 추가하는 문제는 메뉴가 Windows CE의 화면 상단으로 이동하여 거기에있을 수있는 컨트롤을 포함한다는 것입니다.
장기적으로는 번거 로움이 적을 것입니다.

다른 팁

.NETCF에서 이벤트로 사용할 수없는 WM_ExitMenuloop 메시지를 처리하고 싶었던 곳에서 모호하게 비슷한 일을했습니다.

해결책은 메인 메뉴 인 메인 메뉴, WNDPROC 기능을 자신의 Windows 메시지 (WM_EXITMENULOOP)로 처리하고 기본 클래스 WNDPROC에 전화하여 다른 모든 것에 대해 "서브 클래스"메인 메뉴 인 기존 MFC 트릭입니다.

일부 샘플 코드는 Alex Yakhnin의 블로그에서 컨트롤을 서브 클래스하는 방법에 대해 제공됩니다..NETCF에서 창을 서브 클래싱의 예

귀하의 경우에는 실제로 MainMenu가 상주하는 양식을 서브 클래싱하고 WM_DrawItem은 자신을 다루고 싶은 Windows 메시지 일 것이라고 생각합니다. 나는 배경색을 직접 변경하려고 시도하지 않았으므로 이것이 효과가 있을지 확신하지 못하지만 서브 클래스는 내가 시작하는 곳이 될 것입니다.

나는 비슷한 일을하려고 노력했고 자신의 메뉴를 작성해야한다는 것을 발견했습니다. 본질적으로 처음부터. 내가 일하고있는 프로젝트가 비용을 감당할 수 없었기 때문에 포기했습니다. 나는 또한 그것을 발견했다 OpenNETCF 아주 멋진 메뉴 컨트롤이 있습니다. 무료 소프트웨어에 포함되어 있는지 모르겠지만 조사 할 가치가있을 수 있습니다.

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