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

Вниз

Как результат MethodAddress использовать в качестве Tnotifyevent.   Найти похожие ветки 

 
novill   (2004-05-31 11:53) [0]

Уважаемые мастаки! Помогите разобраться - никакие мне известные преобразования не проходят. А сделать надо.
Сверхзадача такая - необходимо реализовать динамического меню программы - пользователь запускает программу, а та считывает какие функции ему доступны.


 
Семен Сорокин ©   (2004-05-31 12:04) [1]

ниииичего не понимаю.
(с) м/ф "Следствие ведут колобки"


 
Fay ©   (2004-05-31 12:04) [2]

MainMenu1.Items[n].Caption := IntToStr(Integer(MethodAddress(...)))
8)


 
Семен Сорокин ©   (2004-05-31 12:30) [3]

:)))

procedure TForm1.Button4Click(Sender: TObject);
type
 PNotifyEvent = ^TNotifyEvent;
var
 _p: PNotifyEvent;
begin
New(_p);
_p^ := Form1.OnDblClick;
Form1.OnClick := _p^;
Dispose(_p)
end;


 
Fay ©   (2004-05-31 12:37) [4]

Это ваще вилы! 8) Ты бы хоть смайлик поставил!


 
Семен Сорокин ©   (2004-05-31 12:52) [5]

Ты бы хоть смайлик поставил!
Так поставил же :))


 
Fay ©   (2004-05-31 12:56) [6]

Вижу. Я уже автоматически фильтрую смайлы с количеством улыбков > 2, блин...
8)


 
novill   (2004-05-31 12:56) [7]

Шутники :)

Представьте себе, что на форме определено около десятка
published методов типа    
procedure NameOfMethod(Sender: TObject);
По нажатию нопки должно происходить одно из них. Какое именно
известно только в процессе выполнения - из файла считывается
имя процедуры. Вопрос: как это сделать?


 
TMethod   (2004-05-31 13:41) [8]

var
 ne: TNotifyEvent;

TMethod(ne).Code := x.MethodAddress("...");
TMethod(ne).Data := Pointer(x);

y.OnSomething := ne;


 
novill   (2004-06-01 08:43) [9]

Спасибо TMethod
Получилось



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
14-1085374544
Dimmman
2004-05-24 08:55
2004.06.13
Зацените сайт


14-1085312933
Kerk
2004-05-23 15:48
2004.06.13
anti-cracking


9-1068301760
Micah'GF
2003-11-08 17:29
2004.06.13
Загрузка MOD в BASS


1-1085990013
novill
2004-05-31 11:53
2004.06.13
Как результат MethodAddress использовать в качестве Tnotifyevent.


4-1083948129
Ded Moroz
2004-05-07 20:42
2004.06.13
CallerID