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

Вниз

событие в другом юните.   Найти похожие ветки 

 
MetalFan ©   (2003-03-03 13:11) [0]

Вопрос такой:
есть юнит с формой (unForm1)
в uses MyUnit прописан.
на форме TEdit.
есть юнит с процедурой-обработчиком события, ну допустим:

unit MyUnit;
interface
Procedure DateEditKeyPress(Sender: TObject; var Key: Char);
implementation
Procedure DateEditKeyPress(Sender: TObject; var Key: Char);
begin
{делаем что надо}
end;

как сделать, чтобы при выборе в Инспекторе в событии нажатии на клавишу (OnKeyPress) для Edit"a можно было сразу выбрать DateEditKeyPress? а то не хотит DateEditKeyPress отображаться в доступных событиях в ObjectInspector для Edita(


 
JibSkeart ©   (2003-03-03 13:20) [1]

Ты сам то понял что сказал ??

TForm1 = class(TForm)
...
public:
Procedure DateEditKeyPress(Sender: TObject; var Key: Char);

end;
prcedure TForm1.DateEditKeyPress(Sender: TObject; var Key: Char)
{
...
}
помойму енто ты должен включить в Класс Формы где
находится Едит


 
Digitman ©   (2003-03-03 13:22) [2]

>MetalFan

Прочувствуй разницу между посто процедурой и процедурным методом класса/объекта


 
KDS ©   (2003-03-03 13:25) [3]

А ты обьяви обработчик не в интерфейсной састи , а "публик" формы
type
TunForm1 = class(TForm)
*****
public
procedure DateEditKeyPress(Sender: TObject; var Key: Char);
end;


А в implementation укажи
procedure unForm1.DateEditKeyPress(Sender: TObject; var Key: Char);


 
MetalFan ©   (2003-03-03 13:25) [4]

может я во что-то не въезжаю...
есть юнит, в котором есть обработчик нажатия на клавишу...
как его подключить к эдиту на форме в другом юните?
что-то я торможу) грипп сказывается)


 
KDS ©   (2003-03-03 13:29) [5]

Программно так

EditForm1.OnKeyPress:=Form2.EditForm2.OnKeyPress


 
Digitman ©   (2003-03-03 13:31) [6]


> есть юнит, в котором есть обработчик нажатия на клавишу


нет у тебя такого юнита !
есть у тебя просто модуль с декларацией и реализацией обычных процедур.
обычная процедура не может быть/стать обработчиком события с т.з. Object Pascal, сделать эту процедуру методом какого-либо класса, декларированного и реализованного в твоем юните.


 
Dms   (2003-03-03 13:33) [7]

наверно грипп ...

обработчик события, чтобы он отображался в инспекторе должен быть описан в классе формы


 
MetalFan ©   (2003-03-03 13:35) [8]


> Digitman ©

thanks) за объяснения!
я савсем расклеился, пойду лучче бороться с гриппом)))
всем здоровья! а то грыпп не есть хорошо)


 
MetalFan ©   (2003-03-03 13:55) [9]

P.S.
сделал так

...
TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
{вызываю процедуру из MyUnit"a}
DateEditKeyPress(Sender,Key);
end;
...



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
7-39598
ksa3003
2003-01-15 10:01
2003.03.13
Проблема с Модемом


1-39312
Alexey_ural
2003-03-04 14:46
2003.03.13
Безформенное, но не консольное приложение


1-39361
REA
2003-02-28 17:46
2003.03.13
Статический виртуальный метод


4-39630
Arkady
2003-01-22 13:58
2003.03.13
Имя EXE-файла по Handle окна


7-39585
maxim2
2003-01-16 12:33
2003.03.13
Как отследить, когда в системе создается окно любого класса