Showmessage で出力される文字サイズを変えるには?

解決


Tana  2005-06-24 12:36:52  No: 15911  IP: 192.*.*.*

Showmessageで出力する文字のサイズを変える方法がわかりません。
どなたか教えていただけませんか?

編集 削除
それは  2005-06-24 14:29:29  No: 15912  IP: 192.*.*.*

面倒だから、自分でダイアログ作るほうが簡単。

編集 削除
ん?  2005-06-24 16:07:41  No: 15913  IP: 192.*.*.*

> 面倒だから、自分でダイアログ作るほうが簡単。
同意

どうしてもやりたいってことなら、CreateMessageDialog 関数を使う。
こいつがShowMEssageで表示しているフォームのインスタンスを返す。
このフォームのフォントを変更すると、(たぶんコンポーネント.ParentFont = True になっているはずだから)
フォントが変わるはず。

初期値のフォントで、フォームの幅やボタンの位置を決めてるから、
フォントを変更すると、レイアウトがくずれるでしょう。

編集 削除
deldel  2005-06-24 17:13:05  No: 15914  IP: 192.*.*.*

一例です。

var
  MsgDlg : TForm;
  i : Byte;
begin
  MsgDlg := CreateMessageDialog('Error!!        ', mtWarning, [mbOK]);

  with MsgDlg do begin
    for i := 0 to ComponentCount - 1 do begin
      if Components[i] is TLabel then begin
        with (Components[i] as TLabel).Font do begin
          Charset := DEFAULT_CHARSET;
          Color := clRed;
          Name := 'Times New Roman';
          Size := 16;
          Style := [fsBold, fsItalic];
        end;
        Break;
      end;
    end;
    ShowModal;
  end;

  MsgDlg.Free;
end;

編集 削除
Tana  2005-06-28 11:24:12  No: 15915  IP: 192.*.*.*

お礼が遅れましたが、色々アドバイスありがとうございます。
たしかにレイアウトがくずれるので苦労してますが、
なんとかなりそうです。
サンプルたすかりました、ありがとうございました。

編集 削除