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++
  как получить указатель на окно из одного из дополнительных классов???

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

Автор Тема:   как получить указатель на окно из одного из дополнительных классов???
Alex_rm опубликован 16-07-2001 13:42 MSK   Click Here to See the Profile for Alex_rm   Click Here to Email Alex_rm  
ситуация такая. имеется диалоговое приложение. также имеются пару классов, определенных ниже.
проблема в том, что я не могу установить связь между классом окна и этими классами. пробовал многое.
есть такой вариант -- надо послать сообщение окну, но для этого надо получить хэндл. но как?

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

Kosha опубликован 17-07-2001 17:28 MSK     Click Here to See the Profile for Kosha  Click Here to Email Kosha     
Ну, например, в стиле "Глобальных" - это через одно место - так:
Посылаешь всем окнам сообщение WM_USER+X,
Х-где-нить побольше, так чтоб уникально было.
А окно, которое ловит - этот WM_USER отрабатывает, потом в WM_COPYDATA посылает свой хэндл, дальше шлешь через него.

А проще сделать через FindWindow, а класс искомого окна как-нить хитро обзови.
Работает как часы.

DEiL опубликован 17-07-2001 21:00 MSK     Click Here to See the Profile for DEiL  Click Here to Email DEiL     
ёпт.
если я правильно понял суть вопроса, то эти два класса - не окна.
так что тебе мешает запихнуть в эти классы указатель на объект окна? :)
server_mouse опубликован 17-07-2001 22:01 MSK     Click Here to See the Profile for server_mouse  Click Here to Email server_mouse     
Есть такая штука AfxGetApp() (или что-то очень похожее, не помню точно). Возвращает указатель на класс CApp твоего приложения. А по этому указателю можешь приспокойно забрать указатель на твоё главное окно (C...Dlg).

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


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.