このサンプルアプリケーションは、メニューのフォントサイズの変更方法を示しています。
注意: フォントサイズを変更するとシステム設定である「画面のプロパティ」-「デザイン」のメニューフォントサイズが変更されます。したがって依存しているアプリケーションすべてが 変更されます。
{ メニューフォントサイズの取得 }
function GetMenuFontSize: integer;
var
ncm: TNonClientMetrics;
PixelsPerInch: integer;
begin
ncm.cbSize := sizeof(TNonClientMetrics);
SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS),
@ncm, SPIF_UPDATEINIFILE);
PixelsPerInch := GetDeviceCaps(GetDC(0), LOGPIXELSY);
Result := -MulDiv(ncm.lfMenuFont.lfHeight, 72, PixelsPerInch);
end;
{ メニューフォントサイズの設定 }
procedure SetMenuFontSize(FontSize: integer);
var
ncm: TNonClientMetrics;
PixelsPerInch: Integer;
begin
ncm.cbSize := sizeof(TNonClientMetrics);
SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS),
@ncm, 0);
PixelsPerInch := GetDeviceCaps(GetDC(0), LOGPIXELSY);
ncm.lfMenuFont.lfHeight := -MulDiv(FontSize, PixelsPerInch, 72);
SystemParametersInfo(SPI_SETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS),
@ncm, SPIF_UPDATEINIFILE);
end;


