자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Q,
윈도우즈의 디스플레이 설정에서 "텍스트, 앱 및 기타 항목의 크기 변경"을 100% 이외의 값으로 설정 한 경우
컨트롤(폼 및 UI 컨트롤)의 크기 또는 위치를 수동으로 지정한 경우 작게 표시되거나 위쪽/왼쪽에 표시됩니다.
방법이 있을까요?
A,
RAD Studio 10 Seatle 버전 부터 HighDPI를 지원합니다.
폼 및 컨트롤의 속성(Left, Top, Width, Height 등)을 화면 비율에 맞게 재조정 해 줍니다.
하지만 수동으로 폼의 크기 또는 컨트롤의 위치를 조정하는 경우는 비율에 맞게 재조정되지 않습니다.
아래 화면은 비율을 125%로 설정 후
왼쪽의 에디트는 속성을 이용해 Top을 100으로
오른쪽은 코드를 이용해 Top을 100으로 설정한 결과입니다.
속성을 이용하는 경우 비율에 맞게 100 * 125%로 자동 계산됩니다.
만약, 코드에서 위와 같이 비율에 맞게 조정하기 위해서는 아래 코드를 참고하시기 바랍니다.
Edit1.Top := MulDiv(100, GetCurrentPPIScreen, GetDesignDpi); // Form 등에서 구현된 코드
또는
Edit1.Top := MulDiv(100, Screen. PixelsPerInch, Application.MainForm. PixelsPerInch); // 클래스 등에 구현된 코드
2개 코드 중 실행되는 코드를 이용하시기 바랍니다.
MulDiv 함수는 WinAPI.Windows 유닛에 정의되어 있습니다.
댓글 0
Q,
윈도우즈의 디스플레이 설정에서 "텍스트, 앱 및 기타 항목의 크기 변경"을 100% 이외의 값으로 설정 한 경우
컨트롤(폼 및 UI 컨트롤)의 크기 또는 위치를 수동으로 지정한 경우 작게 표시되거나 위쪽/왼쪽에 표시됩니다.
방법이 있을까요?
A,
RAD Studio 10 Seatle 버전 부터 HighDPI를 지원합니다.
폼 및 컨트롤의 속성(Left, Top, Width, Height 등)을 화면 비율에 맞게 재조정 해 줍니다.
하지만 수동으로 폼의 크기 또는 컨트롤의 위치를 조정하는 경우는 비율에 맞게 재조정되지 않습니다.
아래 화면은 비율을 125%로 설정 후
왼쪽의 에디트는 속성을 이용해 Top을 100으로
오른쪽은 코드를 이용해 Top을 100으로 설정한 결과입니다.
속성을 이용하는 경우 비율에 맞게 100 * 125%로 자동 계산됩니다.
만약, 코드에서 위와 같이 비율에 맞게 조정하기 위해서는 아래 코드를 참고하시기 바랍니다.
Edit1.Top := MulDiv(100, GetCurrentPPIScreen, GetDesignDpi); // Form 등에서 구현된 코드
또는
Edit1.Top := MulDiv(100, Screen. PixelsPerInch, Application.MainForm. PixelsPerInch); // 클래스 등에 구현된 코드
2개 코드 중 실행되는 코드를 이용하시기 바랍니다.
MulDiv 함수는 WinAPI.Windows 유닛에 정의되어 있습니다.