![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Гость_Raven |
|
|||
|
Unregistered |
Pomogite, perehvatil v Builder sobitije WM_SYSCOMMAND, mne nado bilo obrabotatj tolko SC_MINIMIZE, ostalnije podsobitija po ideje dolzhna obrabativatj f-ja DefWindowProc, no ona vozvraschajet 0 i nichego ne delajet vot kod:
Objavlenije klassa svjazannogo s oknom: class TMSGGW : public TForm Makros obrabotchika soobschenija: BEGIN_MESSAGE_MAP VCL_MESSAGE_HANDLER(WM_SYSCOMMAND, TMessage, OnSysCommand) // <<-- END_MESSAGE_MAP(TForm) Objavlenije proceduri i jej telo: void __fastcall TMSGGW::OnSysCommand(TMessage& msg) { // HWND HiddenWindow = AllocateHWnd(&MSGGW) DefWindowProc((HWND)MSGGW, msg.Msg, msg.WParam, msg.LParam); switch(msg.WParam){ case SC_MINIMIZE: Hide(); TrayMessage(NIM_ADD); TrayMessage(NIM_MODIFY); break; default: break; } } proboval takzhe vmesto MSGGW this, no ne pomogajet. V chjem delo, gde oshibka? Help. Zaraneje spasibo. |
|||
|
||||
| Ars |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 28.8.2003 Где: Московская обл. Репутация: 2 Всего: 2 |
MSGGW - совсем не HWND, а указатель на класс окна. HWND - это MSGGW->Handle Но, ихмо, лучше вызывать дефолтовый обработчик так же, как описано в макросе END_MESSAGE_MAP(TForm), т.е. TForm::Dispatch(Msg) Можно еще так:
Это сообщение отредактировал(а) Ars - 7.10.2003, 10:00 -------------------- Есть многое на свете, друг Горацио, С чем очень долго можно прое..! |
||||
|
|||||
| Гость_Raven |
|
|||
|
Unregistered |
U menja ni odin iz etih metodov ne srabotal, vidajet stack overflow. Mne tut podskazali chto dolyhna bitj standartnaja funkcija OnMinimize, no ja jeje nigde ne nashel, ni v helpe ni v Object Inspector. Zato u menja zarabotal DefWindowProc cherez ->Handle, hotja vchera cherez nego vidaval division by zero
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |