如何更改按钮' MessageDlg的大小?

时间:2016-06-24 08:50:16

标签: delphi delphi-xe7

我设法使用以下声明更改MessageDlg的字体大小:

function MessageDlg(const Msg: string; DlgType: TMsgDlgType;
                    Buttons: TMsgDlgButtons; HelpCtx: Integer): Integer;

以及以下实施:

function MyForm.MessageDlg(const Msg: string; DlgType: TMsgDlgType;
                           Buttons: TMsgDlgButtons; HelpCtx: Integer): Integer;
begin
  with CreateMessageDialog(Msg, DlgType, Buttons) do
    try
      Font.Size := 22;
      Result := ShowModal;
    finally
      Free;
    end
end;

问题是按钮的大小(以及对话框的大小)不会根据新的字体大小而改变。

是否有一种简单的方法可以根据我设置的字体大小调整对话框按钮的大小?

1 个答案:

答案 0 :(得分:7)

MessageDialog使用Screen.MessageFont进行消息和大小计算。

使用

  Screen.MessageFont.Size := 22;
在致电CreateMessageDialog

之前

您可能希望存储旧值并在消息之后将其恢复。