|
|
|
|
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.
Subject |
Author |
Date |
|
tera t
|
Mar 30, 2008 - 8:21 PM
|
Hello. CExtTabMdiOneNoteWnd is bug report.
The indication point of the tab becomes strange when I perform NewFile in succession. void CMainFrame::OnFileNew()
{
int iRec;
for ( iRec = 0 ; iRec < 5 ; iRec++ ){
CDocManager * pDocManager;
pDocManager = AfxGetApp()->m_pDocManager;
pDocManager->OnFileNew();
}
}
 http://www.yukai.jp/~ifreeta/20080331/DRAWCLI.LZH
|
|
Technical Support
|
Mar 31, 2008 - 8:13 AM
|
Our MDI tab control does not control the order of MDI child frames. It displays tab items in the same order as the order of MDI child frame windows order inside the MDI client area window. So, your code simply affects the MDI client area window behavior and, as a result, tab items become inserted in a different order.
The CExtTMWI::_SyncAllItems() virtual method performs synchronization of MDI tab control with MDI interface. You can override this method and initialize all the tab items in your preferred order.
|
|
tera t
|
Mar 31, 2008 - 6:23 PM
|
Hello. When I want to open a childframe continually.
Should I remodel _SyncAllItems?
|
|
Technical Support
|
Apr 1, 2008 - 4:31 AM
|
The _SyncAllItems() method simply removes the tab items which correspond to the destroyed MDI child frames and creates tab items for new MDI child frames.
Your _SyncAllItems() method should be similar to the original one, but it should invoke the ItemInsert() method with different parameters for inserting new tab items at desired locations.
|
|
tera t
|
Mar 30, 2008 - 8:31 PM
|
But when I add the following order.
void CMainFrame::OnFileNew()
{
int iRec;
for ( iRec = 0 ; iRec < 5 ; iRec++ ){
CDocManager * pDocManager;
pDocManager = AfxGetApp()->m_pDocManager;
pDocManager->OnFileNew();
MSG msg;
while (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE))
{
if (!GetMessage(&msg, NULL, 0, 0)){
break;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
} } First of all?
It is displayed definitely. 
|
|