Re[3]: Своя функция на OnClick кнопки и не только
От: svd71 http://visualdesigner.fatal.ru/
Дата: 08.08.05 19:15
Оценка:
Здравствуйте, Mal Hack, Вы писали:

MH>Здравствуйте, Rius, Вы писали:


R>>сто раз уже было...


R>>присваивайте существующий обработчик, являющий членом класса формы


MH>В том-то и дело, что не хочу завязывать с формой. Хочется чтобы эта функция была только в данном модуле и к форме не относилась


В Дельфе это тоже по определению не должно пройходить. OnClick описана как процедура объекта. Есть 2 способа
1)
Создать "Мнимый" объект:

unit U1;
uses Classes;
type
TTO = class
procedure OnClick(Sender: TObject);
end;
var TO : TTO = nil;
implementation
uses Form1;

procedure TTO.OnClick;
begin
.....
Yours code
...
end;

initialization
TO := TTO.Create;
Form1.Button1.OnClick := TO.OnClick;
finalization
FreeAndNil(TO);
end;

2) тут идет пилотаж с TypIno:

.....
implementation
uses TypInfo, Form1;
var M : TMethod;
procedure OnClick(Sender: TObject);
begin
...
Yours code
....
end;

initialization
M.Data := nil;
M.Code := @OnClick;
Form1.Button1.OnClick := TNotifyEvent(M);
end;

ничего, что я на Дельфевый код привел? просто я в наСильничать не силен.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.