[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")
}