我正在寻找一种关闭UI窗口的正确方法。 以下代码适用于GMS 1.x.
Class mainUI:uiframe {
void CloseMe(object self){
DocumentWindow win=self.GetFrameWindow();
if(win.WindowIsValid()) win.WindowClose(0);
}
}
但是这段代码在GMS 2.33下一直崩溃了DigitalMicrograph。
答案 0 :(得分:1)
Mike在评论中指出:答案是使用dlg.Close()
,其中 dlg 将成为您的对话框对象。
以下是GMS 3.2的示例。 (另见this for GMS 3.1)
class myDlg : UIframe
{
void OnClose( object self )
{
self.Close()
}
object InitAndLaunch( object self )
{
TagGroup dlg, dlgItems
dlg = DLGCreateDialog( "test", dlgItems )
dlgItems.DLGAddElement( DLGCreatePushButton( "Close", "OnClose" ) )
self.Init(dlg)
self.Display( "Test" )
return self
}
}
Alloc(myDLG).InitAndLaunch()