diff options
Diffstat (limited to 'examples/gui/splashscreen/frm_splashscreen.pas')
-rw-r--r-- | examples/gui/splashscreen/frm_splashscreen.pas | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/examples/gui/splashscreen/frm_splashscreen.pas b/examples/gui/splashscreen/frm_splashscreen.pas new file mode 100644 index 00000000..14030f2d --- /dev/null +++ b/examples/gui/splashscreen/frm_splashscreen.pas @@ -0,0 +1,111 @@ +unit frm_splashscreen; + +{$mode objfpc}{$H+} + +interface + +uses + SysUtils, Classes, gfxbase, fpgfx, gui_edit, + gfx_widget, gui_form, gui_label, gui_button, + gui_listbox, gui_memo, gui_combobox, gui_grid, + gui_dialogs, gui_checkbox, gui_tree, gui_trackbar, + gui_progressbar, gui_radiobutton, gui_tab, gui_menu, + gui_bevel, gui_popupcalendar, gui_gauge; + +type + + TSplashForm = class(TfpgForm) + procedure SplashFormShow(Sender: TObject); + procedure TimerFired(Sender: TObject); + private + tmr: TfpgTimer; + protected + procedure HandleLMouseUp(x, y: integer; shiftstate: TShiftState); override; + public + {@VFD_HEAD_BEGIN: SplashForm} + pnlName1: TfpgBevel; + lblName2: TfpgLabel; + lblName1: TfpgLabel; + {@VFD_HEAD_END: SplashForm} + constructor Create(AOwner: TComponent); override; + procedure AfterCreate; override; + end; + +{@VFD_NEWFORM_DECL} + +var + frmSplash: TSplashForm; + +implementation + +{@VFD_NEWFORM_IMPL} + +procedure TSplashForm.SplashFormShow(Sender: TObject); +begin + tmr.Enabled := True; +end; + +procedure TSplashForm.TimerFired(Sender: TObject); +begin + tmr.Enabled := False; + tmr.Free; +// writeln('Timer fired'); + Hide; +end; + +procedure TSplashForm.HandleLMouseUp(x, y: integer; shiftstate: TShiftState); +begin + inherited HandleLMouseUp(x, y, shiftstate); + TimerFired(nil); +end; + +constructor TSplashForm.Create(AOwner: TComponent); +begin + inherited Create(AOwner); + WindowType := wtPopup; + + tmr := TfpgTimer.Create(3000); + tmr.OnTimer := @TimerFired; + + OnShow := @SplashFormShow; +end; + +procedure TSplashForm.AfterCreate; +begin + {@VFD_BODY_BEGIN: SplashForm} + Name := 'SplashForm'; + SetPosition(298, 261, 300, 64); + WindowTitle := 'SplashForm'; + WindowPosition := wpScreenCenter; + Sizeable := False; + + pnlName1 := TfpgBevel.Create(self); + with pnlName1 do + begin + Name := 'pnlName1'; + SetPosition(0, 0, 300, 64); + end; + + lblName2 := TfpgLabel.Create(pnlName1); + with lblName2 do + begin + Name := 'lblName2'; + SetPosition(24, 8, 272, 31); + Text := 'Splash screen goes here!'; + FontDesc := 'Arial-18'; + end; + + lblName1 := TfpgLabel.Create(pnlName1); + with lblName1 do + begin + Name := 'lblName1'; + SetPosition(52, 42, 188, 15); + Text := 'Click me to make me disappear.'; + FontDesc := '#Label1'; + end; + + {@VFD_BODY_END: SplashForm} +end; + + +end. |