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 General Discussion » MDI Tab and Windows 7 Collapse All
Subject Author Date
Sergio Buonanno Sep 21, 2010 - 6:43 AM

Under Windows 7 our MDI application has problems in switching from an open document to another by clicking on the MDI tab. The TAB control simply doesn’t’ switch, it behaves like it is disabled (sometimes it works by rapidly clicking more times on the same tab). This problem disappears under Windows Vista or older Windows versions. We have observed this problem with Prof-UIS 2.8x and Prof-UIS 2.90.

Technical Support Sep 28, 2010 - 11:51 AM

In this case is it possible that you create some stripped version of your project containing your UI code and reproducing this issue and send it to us?

Sergio Buonanno Sep 28, 2010 - 1:08 PM

Unfortunately I cannot reproduce the problem in another application and to test my application you would need SQL Server a copy of the database and some mega bytes of code, but I can give you the possibility to access my PC by remote desktop connection as you did in the past, if you want.

Technical Support Sep 29, 2010 - 9:03 AM

Please drop us an e-mail to the support mail box at this web site with information about how and when we can connect to your desktop.

Sergio Buonanno Sep 29, 2010 - 9:20 AM

Done. Thanks.

Sergio Buonanno Sep 27, 2010 - 1:48 AM

It is specific to my application but it is also true that the MDI Tab control has been modified by your customer support because we had some issues in the past due to the specific features of our application. It is an MDI application with MDI Child windows that host Dialogs. The first problem was that we needed to make the MDI Tab control always visible also when no MDI child windows were shown. The MDI Tabs have also tooltips that we use to show some details of the underlying open MDI child window. I don’t know what has changes with Windows 7, but for years everything has worked without any problem (with Windows XP and Vista everythng is fine as I’ve stressed in my previous posts), but with Windows 7 it doesn’t work anymore.

Sergio Buonanno Sep 24, 2010 - 9:08 AM

These are the lines of code used to create the MDI Tab. There isn’t any IDC_STATIC:

if(!m_wndMdiTabs.Create(this, CRect( 0, 0, 0, 0 ), 157,    WS_HSCROLL | WS_VSCROLL | WS_CHILD | WS_VISIBLE |
            WS_CLIPSIBLINGS,
            /*__ETWS_SHOW_BTN_CLOSE |*/
            __ETWS_MDI_DEFAULT | __ETWS_ORIENT_TOP | __ETWS_AUTOHIDE_SCROLL |
            /*__ETWS_ITEM_DRAGGING |*/ __ETWS_BOLD_SELECTION | __ETWS_HIDE_ICONS)
            //PUIS_TABWINDOWFROMDI - $$__PROFUISAPPWIZ_KEY_ADF_MDITABS$$
        )
    {
        ASSERT( FALSE );
        return -1;
    }
    m_wndMdiTabs.ModifyTabWndStyle( 0, __ETWS_SHOW_BTN_TAB_LIST | __ETWS_ENABLED_BTN_TAB_LIST | __ETWS_ENABLED_BTN_CLOSE);

It is impossibile to switch TAB, sometimes it works by clicking outside the TAB control and then back on the MDI Tab, but even when it switches window it does it very slowly.

I do not understand why this doesn’t work under Windows 7, but it works fine under previous Windows versions.

Technical Support Sep 21, 2010 - 10:15 AM

Please do not use the IDC_STATIC constant defined in MFC as the dialog control identifier of MDI tabs and any kind of control bars.

Sergio Buonanno Sep 24, 2010 - 9:09 AM

These are the lines of code used to create the MDI Tab. There isn’t any IDC_STATIC:

if(!m_wndMdiTabs.Create(this, CRect( 0, 0, 0, 0 ), 157, WS_HSCROLL | WS_VSCROLL | WS_CHILD | WS_VISIBLE |
WS_CLIPSIBLINGS,
/*__ETWS_SHOW_BTN_CLOSE |*/
__ETWS_MDI_DEFAULT | __ETWS_ORIENT_TOP | __ETWS_AUTOHIDE_SCROLL |
/*__ETWS_ITEM_DRAGGING |*/ __ETWS_BOLD_SELECTION | __ETWS_HIDE_ICONS)
//PUIS_TABWINDOWFROMDI - $$__PROFUISAPPWIZ_KEY_ADF_MDITABS$$
)
{
ASSERT( FALSE );
return -1;
}
m_wndMdiTabs.ModifyTabWndStyle( 0, __ETWS_SHOW_BTN_TAB_LIST | __ETWS_ENABLED_BTN_TAB_LIST | __ETWS_ENABLED_BTN_CLOSE);

It is impossibile to switch TAB, sometimes it works by clicking outside the TAB control and then back on the MDI Tab, but even when it switches window it does it very slowly.

I do not understand why this doesn’t work under Windows 7, but it works fine under previous Windows versions.

Technical Support Sep 24, 2010 - 10:24 AM

Please let us know whether this problem is specific for your application? Whether it’s reproduced in Prof-UIS sample applications like DRAWCLI? If you open several MDI child frames in restored/non-maximized state, then how fast they switched via selecting window captions?

Sergio Buonanno Sep 27, 2010 - 1:49 AM

It is specific to my application but it is also true that the MDI Tab control has been modified by your customer support because we had some issues in the past due to the specific features of our application. It is an MDI application with MDI Child windows that host Dialogs. The first problem was that we needed to make the MDI Tab control always visible also when no MDI child windows were shown. The MDI Tabs have also tooltips that we use to show some details of the underlying open MDI child window. I don’t know what has changes with Windows 7, but for years everything has worked without any problem (with Windows XP and Vista everythng is fine as I’ve stressed in my previous posts), but with Windows 7 it doesn’t work anymore.

Technical Support Sep 27, 2010 - 11:58 AM

MDI tab controls in Prof-UIS sample applications work well in Windows 7. So try to comment out overloaded methods in your MDI tabs and find a version of code which works. Then review what was commented out and try to find issues there. You may need to comment out some parts of the methods to find what causes the issue. Alternatively, you can create a test project with your MDI tabs and send it to us.

Sergio Buonanno Sep 28, 2010 - 9:07 AM

I have commented all custom code. The result is exactly the same. Under Windows XP, Vista it works, under Windows 7 no way.