Форум: "Потрепаться";
Текущий архив: 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