Vcl.StdCtrls.TButton.ModalResult

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property ModalResult;

C++

__property ModalResult = {default=0};

プロパティ

種類 可視性 ソース ユニット
property published
Vcl.StdCtrls.pas
Vcl.StdCtrls.hpp
Vcl.StdCtrls TButton

説明

ボタンのクリックでその(モーダルな)親フォームが閉じられるかどうか、およびどう閉じられるかを指定します。

Vcl.StdCtrls.TButton.ModalResult は Vcl.StdCtrls.TCustomButton.ModalResult を継承しています。以下の内容はすべて Vcl.StdCtrls.TCustomButton.ModalResult を参照しています。

ボタンのクリックでその(モーダルな)親フォームが閉じられるかどうか、およびどう閉じられるかを指定します。

ボタン コンポーネントの ModalResult プロパティを設定することにより、ボタンのクリックでモーダル フォームを簡単に閉じることができます。ボタンがクリックされると、その親フォームの ModalResult プロパティが、ボタンの ModalResult プロパティと同じ値に設定されます。

たとえば、ダイアログ ボックスに[OK]ボタンと[キャンセル]ボタンがある場合は、それらの ModalResult プロパティを設計時にそれぞれ mrOk および mrCancel に設定できます。実行時には、[OK]ボタンをクリックするとダイアログの ModalResult プロパティが mrOk に変更され、[キャンセル]ボタンをクリックするとダイアログの ModalResult プロパティが mrCancel に変更されます。それ以上の処理が必要な場合を除いて、ボタンには OnClick イベント ハンドラは必要ありません。

XE2 リリースでの ModalResult 値の変更点

XE2 リリースでは、ModalResult の新しい値が 3 つ導入されました。つまり、mrContinuemrHelpmrTryAgain です。

さらに、XE2 では、ModalResult の既存の値が 4 つ変更されました。TButton の ModalResult の 4 つの値(mrClosemrAllmrNoToAllmrYesToAll)のいずれかをアプリケーションで使用している場合は、コードを変更する必要があります。これらの値は .dfm ファイルに数値として格納されるため、プロジェクトを XE2 に移行すると値が変わります。値は次のように変更されました。

  • XE2 より前:
    • mrClose = 11
    • mrAll = 8
    • mrNoToAll = 9
    • mrYesToAll = 10
  • XE2:
    • mrClose = 8
    • mrAll = 12
    • mrNoToAll = 13
    • mrYesToAll = 14

ModalResult プロパティ用に定義されている TModalResult 型定数と、XE2 リリースおよび XE リリース(つまり XE2 より前のあらゆるリリース)でのそれらの値の一覧を次の表に示します。


定数 意味 サポートしているリリース  

mrNone

0

なし。ユーザーが終了する前のデフォルト値として使用されます。

すべてのリリース

mrOk

idOK = 1

ユーザーは[OK]ボタンで終了しました。

すべてのリリース

mrCancel

idCancel = 2

ユーザーは[キャンセル]ボタンで終了しました。

すべてのリリース

mrAbort

idAbort = 3

ユーザーは[中止]ボタンで終了しました。

すべてのリリース

mrRetry

idRetry = 4

ユーザーは[再試行]ボタンで終了しました。

すべてのリリース

mrIgnore

idIgnore = 5

ユーザーは[無視]ボタンで終了しました。

すべてのリリース

mrYes

idYes = 6

ユーザーは[はい]ボタンで終了しました。

すべてのリリース

mrNo

idNo = 7

ユーザーは[いいえ]ボタンで終了しました。

すべてのリリース

mrClose

idClose = 8

ユーザーは[閉じる]ボタンで終了しました。

  • XE では値は 11
  • XE2 では値は 8

mrHelp

idHelp = 9

ユーザーは[ヘルプ]ボタンで終了しました。

XE2 で新規導入

mrTryAgain

idTryAgain = 10

ユーザーは[やり直し]ボタンで終了しました。

XE2 で新規導入

mrContinue

idContinue = 11

ユーザーは[続行]ボタンで終了しました。

XE2 で新規導入

mrAll

mrContinue + 1(12 つまり $C)

ユーザーは[すべて]ボタンで終了しました。

  • XE では値は 8
  • XE2 では値は 12

mrNoToAll

mrAll + 1(13 つまり $D)

ユーザーは[すべていいえ]ボタンで終了しました。

  • XE では値は 9
  • XE2 では値は 13

mrYesToAll

mrNoToAll + 1(14 つまり $E)

ユーザーは[すべてはい]ボタンで終了しました。

  • XE では値は 10
  • XE2 では値は 14


詳細な情報と問題の解決策については、http://www.bobswart.nl/Weblog/Blog.aspx?RootId=5:5029 で公開されている「XE2 values of mrAll, mrNoToAll, mrYesToAll and mrClose」(XE2 での mrAll、mrNoToAll、mrYesToAll、mrClose の値)を参照してください。

関連項目

コード例