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

Вниз

TNotifyEvent   Найти похожие ветки 

 
AndDem   (2003-10-23 17:03) [0]

Добрый день!
Динамически создаю объект TMenuItem. Как прописать ему имя процедуры, которая бы вызывалась при событии OnClick?
Заранее благодарен.


 
Reindeer Moss Eater ©   (2003-10-23 17:10) [1]

MenuItem.OnClick:=<имя нужной процедуры>


 
AndDem   (2003-10-23 17:12) [2]

В том-то и дело, что не проходит...
Даже если ... := TNotifyEvent(:=<имя нужной процедуры>)


 
Reindeer Moss Eater ©   (2003-10-23 17:13) [3]

Значит процедура не нужного типа, а другого


 
AndDem   (2003-10-23 17:16) [4]

Вроде, нормально:
procedure aaa(sender)...
Говорит:
Incompatible types: "TNotifyEvent" and "procedure, untyped pointer or untyped parameter"


 
Reindeer Moss Eater ©   (2003-10-23 17:19) [5]

Верь тому что говорит. Он не врет.

TNotifyEvent = procedure(Sender:TObject) of object;

А у тебя

TAnotherNotifyEvent = procedure(Sender:TObject);


 
Reindeer Moss Eater ©   (2003-10-23 17:20) [6]

Говоря по-русски процедура должна быть методом класса


 
AndDem   (2003-10-23 17:22) [7]

Нет, я, конечно, верю :-))
Но я пытаюсь подставить процедуру, которая уже реально подставлялась для выполнения при onclick"е на другом menuitem"е в design-time....
NewMenuItem.OnClick := InsertItemClick(Sender);
Что не так делаю?


 
AndDem   (2003-10-23 17:23) [8]

Она является таковым (в design-time delphi сама прописала)


 
Reindeer Moss Eater ©   (2003-10-23 17:25) [9]

:= InsertItemClick(Sender);

:= InsertItemClick;


 
AndDem   (2003-10-23 17:26) [10]

Мда... Это я перегрелся :-))))))))
Спасибо!


 
AndDem   (2003-10-23 17:50) [11]

А вот еще хитрый вопрос: можно ли как-то в процедуре InsertItemClickопределить, из какого пункта меню его вызвали, если при создании в run-time этих пунктов я везде указывал InsertItemClick? Через Sender, вроде, не получается...


 
Reindeer Moss Eater ©   (2003-10-23 17:51) [12]

Через Sender, вроде, как раз получается


 
AndDem   (2003-10-23 17:53) [13]

По логике -- да, но что-то не просеку, как именно :-((


 
Reindeer Moss Eater ©   (2003-10-23 17:57) [14]

Sender это и есть кликнутый TMenuItem. Вернее то, чего в нем есть от TObject.

Если InsertItemClick никто кроме TMenuItem"ов не имеет, то смело делай TMenuItem(Sender)


 
AndDem   (2003-10-23 18:00) [15]

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



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

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

Наверх




Память: 0.49 MB
Время: 0.026 c
8-8547
comintegrator
2003-06-27 19:00
2003.11.03
sound


3-8287
alxx
2003-10-13 17:28
2003.11.03
Послать сообщение пользователю БД


7-8694
opoloXAI
2003-08-22 15:37
2003.11.03
Read File from HDD побайтно => скорость очень низкая.


1-8498
Nikolas
2003-10-24 17:52
2003.11.03
Создание DLL


1-8398
udavf
2003-10-22 16:51
2003.11.03
scroll