source: DpiControls/Demo/UFormMain.pas

Last change on this file was 585, checked in by chronos, 2 months ago
File size: 1.6 KB
Line 
1unit UFormMain;
2
3{$mode objfpc}{$H+}
4
5interface
6
7uses
8 Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ComCtrls, StdCtrls,
9 ExtCtrls, Dpi.Controls, Dpi.Forms, UDpiFormMain;
10
11type
12
13 { TFormMain }
14
15 TFormMain = class(TForm)
16 ButtonNewDpiForm: TButton;
17 Label1: TLabel;
18 Timer1: TTimer;
19 TrackBar1: TTrackBar;
20 procedure ButtonNewDpiFormClick(Sender: TObject);
21 procedure FormActivate(Sender: TObject);
22 procedure FormDestroy(Sender: TObject);
23 procedure FormShow(Sender: TObject);
24 procedure Timer1Timer(Sender: TObject);
25 procedure TrackBar1Change(Sender: TObject);
26 private
27 Initialized: Boolean;
28 DpiForm: TDpiForm;
29 public
30 Redraw: Boolean;
31 end;
32
33var
34 FormMain: TFormMain;
35
36implementation
37
38{$R *.lfm}
39
40{ TFormMain }
41
42procedure TFormMain.FormShow(Sender: TObject);
43begin
44 DpiScreen.Dpi := 96 * 2;
45 TrackBar1.Position := DpiScreen.Dpi;
46end;
47
48procedure TFormMain.Timer1Timer(Sender: TObject);
49begin
50 Redraw := False;
51 DpiScreen.Dpi := TrackBar1.Position;
52end;
53
54procedure TFormMain.ButtonNewDpiFormClick(Sender: TObject);
55begin
56 DpiApplication.CreateForm(TDpiFormMain, DpiForm);
57 //DpiForm := TDpiFormMain.Create(Self);
58 DpiForm.Caption := DpiForm.Name;
59 DpiForm.SetBounds(100, 100, 400, 200);
60 DpiForm.Show;
61end;
62
63procedure TFormMain.FormActivate(Sender: TObject);
64begin
65 if not Initialized then begin
66 Initialized := True;
67 ButtonNewDpiFormClick(nil);
68 end;
69end;
70
71procedure TFormMain.FormDestroy(Sender: TObject);
72begin
73 FreeAndNil(DpiForm);
74end;
75
76procedure TFormMain.TrackBar1Change(Sender: TObject);
77begin
78 Redraw := True;
79end;
80
81end.
82
Note: See TracBrowser for help on using the repository browser.