WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  SetClassLong

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   SetClassLong
DmitryRyvkin опубликован 23-10-2001 15:27 MSK   Click Here to See the Profile for DmitryRyvkin   Click Here to Email DmitryRyvkin  
Вот возник такой вопрос. Хочу в приложении сделать все кнопки своего
внешнего вида. Для сего использую SetClassLong(hWnd,GCL_WNDPROC,newProc) и свой обработчик.
Теперь все _вновь_создаваемые_ кнопки действительно будут "мои".
Но - те,что были до вызова SetClassLong -остаются прежними, хоть с бубном
пляши. Почему бы это так ? И зачем Win для вызова SetClassLong нужен
handle любой кнопки , чтоб установить Wndproc для предопределенного в Win
класса BUTTON &
migel опубликован 23-10-2001 22:20 MSK     Click Here to See the Profile for migel  Click Here to Email migel     
А это потому что при создании Окна система копирует указатель текущего обработчика окна во внутреннюю структуру окна- посему в дальнейшем при изминении классового обработчика созданные окошки новый обработчик не береться Ж-).
Используйте SetWindowLong для всех уже существующих.... А вообще менять обработчик у системного класса занятие нервное и по большей части неправильное, кроме естесственно замены скинов окошек Ж-)

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.