uniGUI試用筆記(四)


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。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM