uniGUI试用笔记(四)

 2023-09-05 阅读 11 评论 0

摘要:uniGUI下有专用的登录窗体类:TUniLoginForm,该类属于AppForm,构建代码为: function frmWebLogin: TfrmWebLogin; begin Result := TfrmWebLogin(dmWebMain.GetFormInstance(TfrmWebLogin)); end; 系统中如果存在登录窗体,则首先显示该

uniGUI下有专用的登录窗体类:TUniLoginForm,该类属于AppForm,构建代码为:

function frmWebLogin: TfrmWebLogin; 
begin Result := TfrmWebLogin(dmWebMain.GetFormInstance(TfrmWebLogin)); 
end;

系统中如果存在登录窗体,则首先显示该窗体,当登录窗体返回不同ModuleResult值时,代表不同含义:

 ModalResult := mrOk;      //表示登录成功,显示主窗体ModalResult := mrCancel;  //表示登录失败,退出程序

当主窗体返回不同ModuleResult值时,也有不同含义:

ModalResult := mrOk;      //表示登出,关闭主窗体,显示登录窗体ModalResult := mrCancel;  //表示退出程序

 

uniGUI有2种窗体模式,一种是AppForm,一种是FreeForm,前者由uniApplication进行实例管理,后者需要程序员自己管理。

AppForm需要先注册:

initialization RegisterAppFormClass(TfrmWebxxx);

然后通过TUniGUIMainModule进行创建,代码示例如下:

var frm : TfrmWebxxx; 
begin frm := TfrmWebxxx(MainModule.GetFormInstance(TfrmWebxxx)); frm.Show;

FreeForm不需要注册,同VCL中的窗体一样,可以直接创建,如:

var frm : TfrmWebxxx; 
begin frm := TfrmWebxxx.create(self); frm.Show;

无论是AppForm还是FreeForm,在创建后都不需要手动释放,由系统自动释放。这不太符合Delphi的编程习惯,AppForm还说得过去,但FeeForm就有点不合适了,但是确实存在手工释放报错的情况,所以不建议在uniGUI中使用FreeForm。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/1678.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息