[Back to WIN-OS2 SWAG index] [Back to Main SWAG index] [Original]
{************************************************}
{ }
{ Turbo Pascal for Windows }
{ Tips & Techniques Demo Program }
{ Copyright (c) 1991 by Borland International }
{ }
{************************************************}
program EditControl;
uses WinTypes, WinProcs, WObjects, Strings;
type
TApp = object(TApplication)
procedure InitMainWindow; virtual;
end;
PMyEdit = ^TMyEdit;
TMyEdit = object(TEdit)
procedure WMKeyDownProc(var Message: TMessage);
virtual WM_KeyDown;
end;
PMyWindow = ^TMyWindow;
TMyWindow = Object(TWindow)
MyEdit: PMyEdit;
constructor Init(AParent:PWindowsObject; ATitle: PChar);
procedure SetUpWindow; virtual;
end;
procedure TApp.InitMainWindow;
begin
MainWindow := New(PMyWindow, Init(Nil, 'Edit Control'));
end;
{ This procedure will look the return key and not allow the Default
Window procedure to proccess them. }
procedure TMyEdit.WMKeyDownProc(var Message: TMessage);
var
Focus: THandle;
begin
if Message.wParam = vk_Return then
begin
Focus := GetFocus;
MessageBox(HWindow, 'The Return Key Was Pressed','Attention', mb_Ok);
SetFocus(Focus);
end
else
DefWndProc(Message); {process message normally}
end;
constructor TMyWindow.Init(AParent:PWindowsObject; ATitle:PChar);
const
Text: PChar = 'Press Return';
begin
TWindow.Init(AParent, ATitle);
MyEdit := New(PMyEdit, Init(@Self, 0, Text, 20, 30, 150, 30, 40, False));
end;
procedure TMyWindow.SetUpWindow;
begin
TWindow.SetUpWindow;
SetFocus(MyEdit^.HWindow);
end;
var
App: TApp;
begin
App.Init('Editing');
App.Run;
App.Done;
end.
[Back to WIN-OS2 SWAG index] [Back to Main SWAG index] [Original]