popup-question (プロシージャ)
public {popup-question
message:Graphic,
title:String = {host-localize "User Question"},
owner:#View = {View.get-default-owner},
cancel?:bool = false,
max-width:Distance = 6in,
large-icon:#Pixmap = null,
small-icon:#Pixmap = null
}:String
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.DIALOGS.

[はい]、[いいえ]、および [キャンセル] (オプション) ボタンの付いたモーダル ダイアログ ボックスがポップアップします。

message: ダイアログのコンテンツとして使用される Graphic (ボタンを除く)。
title: ダイアログのタイトル バーに表示される String。既定は "ユーザーからの質問" です。
owner: このダイアログが中心に位置する View。null は、ダイアログが画面上部の 3 分の 2 の部分に中央揃えで表示されます。

このダイアログのオーナー。オーナーが指定されていない場合、GuiManager は、可能である場合、既定のオーナーを選択します。
cancel?: FALSE の場合 (既定値)、[キャンセル] ボタンは表示されません。
max-width: ダイアログの最大幅。最大幅を指定しない場合は、0in を使用します。
large-icon: 大きなアイコン (32x32 ピクセル) が必要な場合に使用されるイメージ。これが null の場合、ダイアログのアイコンは設定されません。
small-icon:
もし、非 nullである場合、View の表題に表示される可能性のあるアイコンとなります。 もし null の場合、View の表題からアイコン(存在する場合)を取り除くことになります。
small-icon は、large-icon が非 null の場合のみに使用されます。

戻り値

クリックされたボタンによって、Dialog.yesDialog.no または Dialog.cancel になります。ボタンをクリックせずにダイアログを閉じた場合 (たとえば Windows で Alt-F4 キーを押した場合)、戻り値は、[キャンセル] ボタンがある場合は Dialog.cancel に、それ以外の場合は Dialog.no になります。

説明

このダイアログの既定のボタン ("enter" を押すと選択されるボタン) は [はい] です。

注意事項

特権の無いポップアップ ダイアログに関しては、large-icon および small-icon は効力がありません。
small-icon を使用しないウィンドウ システムもあります。View の表題にアイコンを表示しないものもあります。これは基本的にウィンドウ システムによって違います。
もし ownernull の場合、ダイアログの View は最高位の View となります。
キーワード引数の width がこのプロシージャに設定される場合、widthmax-width 以下か max-width0m として渡されるかのどちらかを確認しなければなりません。


{let the-answer:Dynamic={Dynamic "yes"}}

{paragraph The answer is {value the-answer}}

{CommandButton label="ask again",
    {on Action do

        {value
            let ret =
                {popup-question "What is the answer?", cancel?=true}
            {if ret != Dialog.cancel then
                set the-answer.value = ret
            }
        }
    }
}