Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » PagePermanentWndGet question Collapse All
Subject Author Date
Offer Har Jul 20, 2007 - 9:03 AM

Dear Support,

I use the class CExtTabPageContainerWnd, derive it and override the function OnTabWndSelectionChange.
In this function I try to get the pointer to the pages (CExtResizableDialog dialogs in my case), and do some manipulation on them.
What I see is that the original pointer of the dialog I’ve inserted, and the pointer to the dialog I get from PagePermanentWndGet are not the same.
Is this behavior normal? If so, is there a way I can get the original pointers, or I need to keep them myself?

Thanks,
Ron.

Technical Support Jul 20, 2007 - 10:47 AM

The CExtTabPageContainerWnd::PagePermanentWndGet() method simply invokes CWnd::FromHandlePermanent() for the HWND handle of the child page window. If your dialogs are permanently based on the CDialog/CExtResizableDialog class objects, then you should get the same pointers during life-time of these dialogs. If a HWND handle does not correspond to any permanent MFC object, CExtTabPageContainerWnd::PagePermanentWndGet() returns NULL. This method can return different non-NULL pointers only if you are subclassing/unsubclassing HWND handles to dialog pages manually.