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 |
|
park ki tae
|
Mar 25, 2010 - 1:01 AM
|
first all i’m sorry i’m not good at english. i have a problem using CExtTabMdiWhidbeyWnd . when i created child view in UI Thread, no ploblem but when i created child view in Multi Thread, it occur problem. attach homepage address including screen captrue jpg file. i can’t find the reason why this problem occur. http://blog.naver.com/nowan4ever/memo/30083138264
|
|
Technical Support
|
Mar 31, 2010 - 8:24 AM
|
Please try implementing the following in your multithreaded project:
- If the worker thread changes the MDI child frame widow title or its document title, then it should send some (WM_USER+123) message to the main frame window.
- The main frame window should handle the (WM_USER+123) message. The message handler should invoke the CExtTabWnd::UpdateTabWnd() method of the Whidbey MDI tabs control.
We believe this solution will provide the MDI tab items with the correct size and layout.
|
|
park ki tae
|
Mar 30, 2010 - 2:31 AM
|
Thank for your answer. I Watch out the OnTabWndQueryItemText() Function. But Thereis no differencem, pActiveDoc->GetTitle() returns same value. So I follow the function step by step... i found the difference in " void CExtTabWhidbeyWnd::stat_OnTabWndDrawItemWhidbeyImpl()" Function. The rcEntireItem Parameter Value is different. rcEntireItem value In UI Thread Is " {top=6 bottom=21 left=13 right=126} "
rcEntireItem value In WorkThread Is " {top=3 bottom=20 left=1 right=25}" The rcEntireItem Recr’s width is 5. So it is not enough to short drawing The Document Title Text In WorkThread.
|
|
Technical Support
|
Mar 25, 2010 - 7:53 AM
|
The CExtTMWI::OnTabWndQueryItemText() virtual method provides MDI tab items with text strings. It can use the CDocument::GetTitle() API in the single threaded version of your application. It can use the CWnd::GetText() API in the multithreaded version of your application. It’s possible the document title and MDI child frame window text is different. You can setup breakpoint into the CExtTMWI::OnTabWndQueryItemText() method and debug it in both versions of your application to see the difference.
|
|
park ki tae
|
Mar 30, 2010 - 2:32 AM
|
Thank for your answer. I Watch out the OnTabWndQueryItemText() Function. But Thereis no differencem, pActiveDoc->GetTitle() returns same value. So I follow the function step by step... i found the difference in " void CExtTabWhidbeyWnd::stat_OnTabWndDrawItemWhidbeyImpl()" Function. The rcEntireItem Parameter Value is different. rcEntireItem value In UI Thread Is " {top=6 bottom=21 left=13 right=126} "
rcEntireItem value In WorkThread Is " {top=3 bottom=20 left=1 right=25}"
The rcEntireItem Recr’s width is 5. So it is not enough to short drawing The Document Title Text In WorkThread
|
|