Index: AAPClient/ProScanMain.pas =================================================================== diff -u -r11 -r15 --- AAPClient/ProScanMain.pas (.../ProScanMain.pas) (revision 11) +++ AAPClient/ProScanMain.pas (.../ProScanMain.pas) (revision 15) @@ -10,10 +10,13 @@ TfmProScanHoofdscherm = class(TForm) procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); private fInitialen: string; fLoginCode: string; fHuidigScherm: TForm; + fLoginScherm: TForm; + fHomeScherm: TForm; public end; @@ -23,7 +26,7 @@ implementation uses - LoginScherm, GebruikerService; + LoginScherm, GebruikerService, HomeScherm; {$R *.dfm} @@ -46,7 +49,6 @@ Request.Header := Header; Service.GebruikerAfmelden(Request); - ShowMessage(fInitialen+'afgemeld'); finally Request.Free; end; @@ -56,20 +58,45 @@ procedure TfmProScanHoofdscherm.FormCreate(Sender: TObject); var LoginScherm: TfmLoginScherm; +begin + fLoginScherm := TfmLoginScherm.Create(Self); + fHomeScherm := TfmHomeScherm.Create(Self); + fHuidigScherm := fLoginScherm; + + Self.Show; +end; + +procedure TfmProScanHoofdscherm.FormShow(Sender: TObject); +var fModalResult: TModalResult; begin - fHuidigScherm := TfmLoginScherm.Create(Self); - fModalResult := fHuidigScherm.ShowModal; + fModalResult := mrNone; + while fModalResult <> mrAbort do begin + //LoginScherm tonen if fHuidigScherm.ClassType = TfmLoginScherm then begin + fModalResult := fHuidigScherm.ShowModal; if fHuidigScherm.ModalResult = mrRetry then begin fModalResult := fHuidigScherm.ShowModal; end; if fHuidigScherm.ModalResult = mrOk then begin - ShowMessage('volgend scherm'); + fInitialen := (fHuidigScherm as TfmLoginScherm).GeefInitialen(); + fLoginCode := (fHuidigScherm as TfmLoginScherm).GeefLoginCode(); + fHuidigScherm := fHomeScherm; end; end; + + //HomeScherm tonen + if fHuidigScherm.ClassType = TfmHomeScherm then begin + fModalResult := fHuidigScherm.ShowModal; + if fHuidigScherm.ModalResult = mrRetry then begin + ShowMessage('retry'); + end; + if fHuidigScherm.ModalResult = mrOk then begin + fHuidigScherm := fLoginScherm; + end; + end; end; Self.Close;