home *** CD-ROM | disk | FTP | other *** search
- {************************************************}
- { }
- { Turbo Pascal for Windows }
- { Demo program }
- { Copyright (c) 1991 by Borland International }
- { }
- {************************************************}
-
- program BtnTest;
-
- uses WObjects, WinTypes, WinProcs;
-
- const
- id_Push1 = 101;
- id_Rad1 = 102;
- id_Rad2 = 103;
- id_Check1 = 104;
- id_Group1 = 105;
-
- type
- TestApplication = object(TApplication)
- procedure InitMainWindow; virtual;
- end;
-
- PTestWindow = ^TestWindow;
-
- TestWindow = object(TWindow)
- Rad1, Rad2: PRadioButton;
- Check1: PCheckBox;
- Group1: PGroupBox;
- constructor Init(AParent: PWindowsObject; ATitle: PChar);
- procedure HandlePush1Msg(var Msg: TMessage);
- virtual id_First + id_Push1;
- procedure HandleCheck1Msg(var Msg: TMessage);
- virtual id_First + id_Check1;
- procedure HandleGroup1Msg(var Msg: TMessage);
- virtual id_First + id_Group1;
- end;
-
- { --------TestWindow methods------------------ }
- constructor TestWindow.Init(AParent: PWindowsObject; ATitle: PChar);
- var
- AButt: PButton;
- begin
- TWindow.Init(AParent, ATitle);
- AButt := New(PButton, Init(@Self, id_Push1, 'State of Check Box',
- 88, 48, 296, 24, False));
- Check1 := New(PCheckBox, Init(@Self, id_Check1, 'Check Box Text',
- 158, 12, 150, 26, nil));
- Group1 := New(PGroupBox, Init(@Self, id_Group1, 'Group Box',
- 158, 102, 176, 108));
- Rad1 := New(PRadioButton, Init(@Self, id_Rad1, 'Radio Button 1',
- 174, 128, 138, 24, Group1));
- Rad2 := New(PRadioButton, Init(@Self, id_Rad2, 'Radio Button 2',
- 174, 162, 138, 24, Group1));
- end;
-
- procedure TestWindow.HandlePush1Msg(var Msg: TMessage);
- begin
- if Check1^.GetCheck = 0 then
- MessageBox(HWindow, 'Unchecked', 'The check box is:', MB_OK)
- else MessageBox(HWindow, 'Checked', 'The check box is:', MB_OK);
- end;
-
- procedure TestWindow.HandleCheck1Msg(var Msg: TMessage);
- begin
- MessageBox(HWindow, 'Toggled', 'The check box has been:', MB_OK)
- end;
-
- procedure TestWindow.HandleGroup1Msg(var Msg: TMessage);
- var
- TextBuff: array[0..20] of Char;
- begin
- if Rad1^.GetCheck <> 0
- then GetWindowText(Rad1^.HWindow, TextBuff, SizeOf(TextBuff))
- else GetWindowText(Rad2^.HWindow, TextBuff, SizeOf(TextBuff));
- MessageBox(HWindow, TextBuff, 'You have selected:', MB_OK);
- end;
-
- { -----------TestApplication Methods------------ }
- procedure TestApplication.InitMainWindow;
- begin
- MainWindow := New(PTestWindow, Init(nil, 'Button Tester'));
- end;
-
- var
- TestApp : TestApplication;
-
- begin
- TestApp.Init('ButtTest');
- TestApp.Run;
- TestApp.Done;
- end.
-