Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.008 c
1-8357
DimChan
2003-10-23 10:05
2003.11.03
TQuery


9-8250
Познователь
2003-04-22 18:54
2003.11.03
Кто поможет? DirectInput организация управления.


6-8579
Barmutik
2003-09-08 11:34
2003.11.03
WebBrowser + прерывание OnIdle


3-8288
mod
2003-10-11 15:47
2003.11.03
BDE


1-8465
Шишкин Илья
2003-10-24 18:11
2003.11.03
Как убрать значок приложения с TaskBar a





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский