Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: CL | DM;

Вниз

события   Найти похожие ветки 

 
Pavel   (2004-03-03 21:25) [0]

Подскажите пожалуйста что не так.
Есть 2 модуля main и obj
main:
var
Input : TGInput;
implementation

procedure InputEnter(sender:Tobject);{это типо обработчик}
begin
Input.Text:="Ok";
end;
и obj:

type
TGInput = class (TWinControl)
FOnEnter:TNotifyEvent;
property OnEnter: TNotifyEvent read FOnEnter write FOnEnter;
end;

procedure TGInput.WndProc(var Message: TMessage);
begin
 ......
 if Assigned(FOnEnter) then FOnEnter(Self);
........
end;

Вроде бы если смотреть на примеры других компонентов то всё также но что-то не работает.
Если на словах то, обект должен при получении сообщения о нажатии кнопки(клавиатуры) запускать код обработчика.


 
TUser ©   (2004-03-03 21:44) [1]

А он где-нибудь назначается?


 
Алхимик ©   (2004-03-03 21:44) [2]

FOnEnter:TNotifyEvent;
уже есть в TWinControl
Для получения сообщений используйте
procedure WMKeyDown(var Message: TWMKeyDown); message WM_KEYDOWN;


 
Pavel   (2004-03-03 22:25) [3]

Спосибо конечно, но с получением сообщений у меня всё в порядке.
> TUser

А где его  назначать и как ?


 
Zacho ©   (2004-03-03 22:47) [4]


> А где его  назначать и как ?

В Object Inspector"е или программно, там где надо.
Только procedure InputEnter(sender:Tobject) - не пойдет, обработчик должен быть методом класса: TNotifyEvent = procedure(Sender: TObject) of object;
Подробнее см. Object Pascal Reference, главу Procedural types


 
Pavel   (2004-03-04 16:42) [5]

Кто бы мне смог объяснить "на пальцах" как исходя из моего кода, сделать работающий код. Что куда добавить чтобы всё было нормально. Черезменое чтение manual(ов) у меня вызывает депрессию.



Страницы: 1 вся ветка

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
6-1073655406
Va
2004-01-09 16:36
2004.03.28
Как узнать, что закончилась регистрация в сети ?


1-1078865639
SeriousSam
2004-03-09 23:53
2004.03.28
Как сделать что бы в StringGrid e по команде выделялся...


3-1074853124
nejest
2004-01-23 13:18
2004.03.28
как сделать если нету записей, удовлетворяющих условию выводило 0


14-1077905625
Style
2004-02-27 21:13
2004.03.28
Людии помогите! Есть форма на ней две панельки?


4-1071231196
Talla2k
2003-12-12 15:13
2004.03.28
как скрыть программу