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

Вниз

Какой аналог делфийского метода Inherited в C++Builder   Найти похожие ветки 

 
Эмиль   (2002-07-23 13:43) [0]

Уважаемые, подскажите пожалуйста аналог делфийского метода Inherited под C++Builder. Спасибо


 
Эмиль   (2002-07-24 11:29) [1]

Отвечу на собственный же вопрос:

DefWindowProc(Handle,WM_сообщение,Msg.WParam,Msg.LParam);
и все становится как надо



 
vads   (2002-07-24 16:12) [2]

А "самоответ" - это шутка наверное такая тонкая ???



 
kull   (2002-07-24 16:59) [3]


> Отвечу на собственный же вопрос:

А ответ-то не в тему.

в С++ вместо inherited вызывается тот же метод но с указанием класса предка:

CMyClassPro::method(){
CMyClass::method();
}


 
Эмиль   (2002-07-25 08:20) [4]

vads"у... да нет просто покопался немного и сам смог найти решение,
как говорится кто ищет , тот всегда найдет

Специально для kull:

class TForm1 : public TForm
{
__published:
...
public:
virtual __fastcall TForm1(TComponent* Owner);
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_SYSCOMMAND,TMessage,WMSYSCOMMAND)
END_MESSAGE_MAP(TForm)


void __fastcall TForm1::WMSYSCOMMAND(TMessage& Msg)
{
if (Msg.WParam==SC_MINIMIZE)
{
Form1->Hide();
... // + свой код
}
}
форма только сворачивается , но не перетаскивается и не закрывается,
в делфи с этим делом обстоит проще добавляещь inherited и все методы унаследовались для данного события мыши.
На помощь приходит DefWindowProc(Handle,WM_SYSCOMMAND,Msg.WParam,Msg.LParam);

kull может подскажешь другое решение , буду очень благодарен


 
vads   (2002-07-25 09:52) [5]

Ну хоть что-то стало понятно

Вообще-то я думал, что inherited относится только к наследованию классов, а не всяких системных штучек, в этой ситуации тебе kull все сказал
Но может быть в Delphi в каких-то ситуациях этим же словом и что другое обозначается ? Кстати мне это действительно интересно, может кто подскажет

Что по Builder"у то зависимости от того чем ты собственно занят:
просто с api развлекаешься, пытаешься приложение в systray "свернуть" или что-то более серьезное делаешь, то могу порекомендовать посмотреть у TControl и у TWinControl - WindowProc, WndProc, DefWndProc
а также у TApplication - OnMinimize и тд


 
Эмиль   (2002-07-25 10:08) [6]

Постепенно перехожу с делфи на билдер. Билдеровский компонент
TrayIcon прибавляет к без того раздутым билдеровским ехе-шникам (в этом его огромный минус и еще медленная компиляция)
еще около 200кб, поэтому вот сижу и ковыряюсь с АПИ (но зато выиграл где-то 150 кб)


 
vads   (2002-07-25 10:54) [7]

Ну я так понял ты вопрос решил
Я бы в принципе форму скрывал в Application->OnMinimize
Ну а по большому счету - какая разница ???

Правда я так и не понял насчет inherited - оно то тут причем ?
Описанная тобой проблема ведь не проблема инструмента, а вопрос использования WinApi и VCL, какая в данной ситуации разница между Delphi и Builder ?


 
Эмиль   (2002-07-25 11:04) [8]

vads"у спасибо.
Разница лишь в том, что в Делфи использовав это ключевое выражение "inherited" мы избавляемся от многих проблем, компилятор автоматически наследует те методы , в данном случае действия с окном. А в с++ этого сделать сразу "в лоб" нельзя, нужно больше ручками


 
vads   (2002-07-25 11:13) [9]

Эмиль

Подожди я все-таки запутался. Знакомство с Дельфи у меня на уровне рысканья в исходниках VCL и написания учебных задачек для знакомых девочек. Если не трудно швырни мне по почте кусочек кода на Delphi - аналог того что у тебя выше
Почему по почте - у нас уже соовсем личный разговор пошел, зачем форум грузить



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

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

Наверх




Память: 0.46 MB
Время: 0.006 c
6-60769
Ron
2002-05-28 10:14
2002.08.19
E-mail


6-60764
neodiX
2002-06-04 12:28
2002.08.19
Это действительно проблема!


7-60864
Dmitry V. Averuanov
2002-05-11 12:06
2002.08.19
В какой каталог установлен Windows


1-60578
anod
2002-08-07 00:40
2002.08.19
Скин


1-60739
Leny
2002-08-07 12:52
2002.08.19
Поверх всех окон





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