Unigui trial notes (4)

Source: Internet
Author: User

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。

uniGUI试用笔记(四)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.