Delphiのメッセージダイアログボックス「MessageDlg」の記事で、疑問符などの表示マーク、戻り値についても掲載しています。

 

※全てのDelphiで動作する保証はありません。また、内容に関し管理人は全ての責任を負いかねます

サンプル ※説明に必要な部分しか記述していません

 

・概要:フォーム上に TButton を5つ配置し、それぞれの OnClick に異なるMessageDlg文を記述し実行しました。

 

procedure TForm1.Button1Click(Sender: TObject);
begin
MessageDlg('サンプル'+ #13#10 +'です', mtWarning, [mbOK], 0);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
MessageDlg('サンプル'+ #13#10 +'です', mtError, [mbOK,mbCancel], 0);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
MessageDlg('サンプル'+ #13#10 +'です', mtInformation, [mbYes,mbNo], 0);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
MessageDlg('サンプル'+ #13#10 +'です', mtConfirmation, [mbYes,mbNo,mbClose], 0);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
if MessageDlg('このまま続行しますか?', mtCustom, [mbOK,mbCancel], 0, mbCancel) = mrCancel then begin
    Exit;
end;
end;

 

実行例

 

判明したこと

・mbYesやmbNoは日本語環境下では「はい」「いいえ」でした。

・mtConfirmationを指定してもmtInformationと同じマークでした。

・戻り値をうまく活用すれば、分岐処理が可能です。

 

下記はヘルプからの引用です
構文

構文1
MessageDlg(const Msg: string;
DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons;
HelpCtx: Integer): Integer; overload;

構文2
function MessageDlg(const Msg: string;
DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons;
HelpCtx: Integer;
DefaultButton: TMsgDlgBtn): Integer; overload;

 

主要なDlgType 値 意味
mtWarning 黄色い感嘆符シンボルが含まれるメッセージ ボックス。
mtError 赤い停止マークが含まれるメッセージ ボックス。
mtInformation 青い “i” が含まれるメッセージ ボックス。
mtConfirmation 緑の疑問符が含まれるメッセージ ボックス。

 

主要なTMsgDlgBtn 値 戻り値
mbOK mrOK
mbCancel mrCancel
mbYes mrYes
mbNo mrNo
mbClose mrClose

 

VB(VBA)のMsgBoxに似ています。

 

詳細なヘルプ

Vcl.Dialogs.MessageDlg – RAD Studio API Documentation (embarcadero.com)

 



ȥåץڡ