MFC 프로젝트가 있습니다. 그것은 40 개 이상의 언어를 지원합니다.메뉴 잘림
내 컴퓨터에는 두 대의 모니터가 있습니다. 둘 다 다른 크기의 모니터와 다른 해상도입니다.
작은 모니터로 응용 프로그램을 옮기면 전체 언어 메뉴가 표시되지 않습니다. 스크롤 막대가 표시되는 것을 이해했습니다. 왜 안 그래?
내 메뉴는 표준 메뉴입니다. 멋진 일은 없어.
주 모니터의 해상도가 높기 때문에 전체 메뉴를 볼 수 있습니다.
알려 주시기 바랍니다.
MFC 프로젝트가 있습니다. 그것은 40 개 이상의 언어를 지원합니다.메뉴 잘림
내 컴퓨터에는 두 대의 모니터가 있습니다. 둘 다 다른 크기의 모니터와 다른 해상도입니다.
작은 모니터로 응용 프로그램을 옮기면 전체 언어 메뉴가 표시되지 않습니다. 스크롤 막대가 표시되는 것을 이해했습니다. 왜 안 그래?
내 메뉴는 표준 메뉴입니다. 멋진 일은 없어.
주 모니터의 해상도가 높기 때문에 전체 메뉴를 볼 수 있습니다.
알려 주시기 바랍니다.
DPI 인식을 설정하는 여러 가지 방법이 있습니다. 이 값을 어떻게 설정 했느냐에 달려 있습니다.
클릭 "Project Properties"
->"Manifest Tools"
-> 문제를 설명 할 수 "DPI Awareness"
그것은 귀하의 경우 "High DPI Aware"
을 말할 수있다. "Per Monitor High DPI Aware"
"True/PM"
대신
"True"
해야한다. 매니페스트 파일의 이름은
"myapp.exe.manifest"
이며 리소스 디렉토리에 있어야합니다. 문제를 설명 할 수있는 값이
"True"
수 있습니다 귀하의 경우에는
<dpiAware>True/PM</dpiAware>
.
SetProcessDpiAwareness
을 사용 중일 수 있습니다. 이 경우 값
PROCESS_PER_MONITOR_DPI_AWARE
을 사용해야합니다.
SetProcessDPIAware
을 사용할 수도 있습니다. 이 함수는 더 이상 사용되지 않습니다.
대단히 감사합니다. 내 설정은 ** 높음 DPI 인식 **으로 설정되었습니다. 다른 설정으로 조정했는데 메뉴가 두 모니터에서 제대로 표시됩니다. 고맙습니다. :) –
나는 당신의 프로그램이 "알고는 dpi"반대로 "모니터 dpi의 당 인식"가정 참조? –
나는 정직한 대답을 모른다. 어떻게 검토해야합니까? –