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

Вниз

Что то пропустил, как так можно делать?   Найти похожие ветки 

 
AV ©   (2012-06-26 09:12) [0]

почему это работает?

procedure WMSetText(var Msg : TWMSetText); message WM_SETTEXT;

procedure TMyForm.WMSetText(var Msg : TWMSetText);
begin
inherited; //????
бла-бла
end;

Какой еще inherited?
Откуда известно, куда надо делать inherited?
(
подробнее
http://delphimaster.net/view/2-1340630036/
)


 
Давайте будем жрать!   (2012-06-26 09:20) [1]


> Какой еще inherited?
Стандартный обработчик сообщения.. До или после (в твоём примере) него ты выполняешь какие-то дополнительные действия.


 
Palladin ©   (2012-06-26 09:23) [2]

читай в справке про "Message Methods"


 
Ega23 ©   (2012-06-26 09:23) [3]


> inherited; //????


выполнить у ближайшего предка метод с названием и параметрами, аналогичными текущему.
Что не так?


 
Ega23 ©   (2012-06-26 09:24) [4]


> читай в справке про "Message Methods"


О, кстати. Там была какая-то заковыка с inherited. С полгода назад что-то такое проскакивало.


 
icWasya ©   (2012-06-26 09:34) [5]

>Какой еще inherited?

В случае "Message Methods", например такой
procedure WMSetText(var Msg : TWMSetText); message WM_SETTEXT;
Inherited подразумевает выполнение метода предка не с таким же именем, а с тем же номером сообщения, в данном случае WM_SETTEXT, если такой у предка есть. Если у предка нет такого метода, то не делается ничего.

>Откуда известно, куда надо делать inherited?
Ниоткуда. Это должно быть известно только разработчику метода.
В какой момент и нужно ли вообще вызывать стандартный обработчик - решать автору.


 
Anatoly Podgoretsky ©   (2012-06-26 09:47) [6]


> Какой еще inherited?

Нормальный, я уже ответил в начальной теме, inherited к виртуальности отношения не имеет, это относится только к наследованию


> Откуда известно, куда надо делать inherited?

Компилятор знает прародителя и все его методы, тут нет никакой проблемы.

Когда надо указать какой именно метод вызывать, то используется вторая форма inherited имя

и когда еще и другой список параметров то третья форма inherited имя(параметры)

inherited всего лишь макроподстановка имени класса прародителя, более гибко, нет привязки к имени


 
AV ©   (2012-06-26 09:55) [7]

ясно. Спасибо!



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

Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.072 c
15-1332534602
Юрий
2012-03-24 00:30
2013.03.22
С днем рождения ! 24 марта 2012 суббота


4-1260893670
QAZ
2009-12-15 19:14
2013.03.22
Hook&Uac


15-1338429114
Думкин
2012-05-31 05:51
2013.03.22
Жизнь


15-1343759274
Rouse_
2012-07-31 22:27
2013.03.22
Кто сидит на корбине, нид хелп небольшой


15-1337956188
Pit
2012-05-25 18:29
2013.03.22
Кайт Томас, Oracle





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский