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 » CExtTabPageContainerWnd issues (V2.54) Collapse All
Subject Author Date
V M Jul 23, 2006 - 3:04 AM

There are several questions and/or issues with the CExtTabPageContainerWnd (V2.54) which I will put under this one subject in hope that someone can confirm them and/or suggest a resolution:


1. How can a CExtResizableDialog "page" contained within the CExtTabPageContainerWnd have a thin border around it - e.g. similar to the style of visual studio 8 solution explorer window where the container does NOT have the border but the "property page" is bounded?

I have tried setting WS_EX_STATICEDGE on the child (page) dialog itself, but this appears to be automatically reset (the border disappears) as soon as the container tab is clicked.

My motivation for this is to have the theme appearance for a child property sheet within a dialog form with multiple property pages since CExtResizablePropertySheet does not support themes other than Office2000 in this configuration (as documented).


2. CExtTabPageContainerWnd does not appear to support keyboard control switching between different tab pages, and also does not allow TAB to escape the page?

Setting WS_TABSTOP window style on the container DOES enable TAB key to work WITHIN the page dialog (i.e. tab between child controls on the contained "page"), and TAB focus change TO one of the child controls FROM a control on the main dialog will work, however once the focus is INSIDE the contained page, there is no way to TAB out of it, nor can the tab-control itself gain focus so that cursor keys can be used to switch between different pages.

Vojin

V M Jul 23, 2006 - 7:06 PM

Thank you very much for answering my questions, and very promptly indeed! Both solutions work terrific! Thanks again.

(PS: do you know if different themes will be supported by CExtResizablePropertySheet in tabbed (child window) configuration in a future release of Prof-UIs or are there any technical reasons - "the windows factor" that may prevent that?)

Cheers!

Technical Support Jul 24, 2006 - 5:09 AM

We believe the CExtTabPageContainerWnd window is a good replacement for the CPropertySheet window in the tabbed mode. The CExtResizablePropertySheet window is present in Prof-UIS mostly as a skinned wizard control. The CExtTabWnd window used in CExtTabPageContainerWnd is not based on the CTabCtrl window, which is used in CPropertySheet. This is the single incompatibility.

Technical Support Jul 23, 2006 - 12:21 PM

The thin border can be applied using the CExtWRB template class (WRB stands for Window in Resizable Bar) which is designed for adding a border around any window (as you can see in controls inside dockable panes in Visual Studio). You can use this template class in the declaration of your dialog class:

class CYourDialog : public CExtWRB < CExtResizableDialog >
Or you can simply use it directly in the declaration of your dialog variable:
CExtWRB < CYourDialog > m_wndYourDialog;
The tab page container uses a Visual Studio-like flat tab window which does not support keyboard operations. But the tab page container supports Ctrl+PageUp and Ctrl+PageDown for switching between pages. The same key combinations are supported in the tabbed group of control bars.