2

[x] または終了ボタンがクリックされた場合を除いて、開いたままにしたいダイアログがあります。pose() または display() を使用するかどうかにかかわらず、ほとんどのオブジェクト (文字列ボックスなど) が選択されているときにエスケープを押すか、Enter キーを押すと、ダイアログは常に閉じているように見えます。これを防ぐ方法はありますか?

これが発生する場合のいくつかの公開例は、DM Mitchell の「例: スレッドとダイアログの相互作用」と「例: シングル ボタン ダイアログ」ですが、どのダイアログにも当てはまるようです。

例外はドッキング パレットのようですが、この機能は GMS2.3/GMS3 ではかなり制限されているようです。

テストするコード例:

class myUItest:UIframe
{
    object Init( object self )
    {
        TagGroup dlgTGitems 
        TagGroup dlgTG = DLGCreateDialog("Modal",dlgTGitems)
        TagGroup dlgField = DLGCreateIntegerField(12,20)
        dlgTGitems.DLGAddElement(dlgField)
        return self.super.init(dlgTG)
    }
}

{
    object DLG = ALLOC(myUItest).Init()
    DLG.Pose()
    DLG.display("Modeless")
}
4

1 に答える 1