我有一个对话框,除非单击[x]或退出按钮,否则我希望保持打开状态。如果您点击转义或者在选择大多数对象时(例如字符串框)按Enter键,无论您使用的是pose()还是display(),对话框似乎总是关闭。有办法防止这种情况吗?
发生这种情况的一些公开示例是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")
}
答案 0 :(得分:0)
似乎无法通过您提到的击键来阻止模式对话框(通过UIFrame的Pose方法呈现的对象)的终止。但是,无模式对话框是否适用于您的应用程序?这样的对话框是通过在UIFrame对象上调用Display方法创建的,并且不会通过esc或enter关闭。