Hallo zusammen,
ich habe eben eine Frage in der englisch-sprachigen MSDN-C++-Newsgroup gestellt und möchte sie hier ebenfalls wiederholen:
Es geht darum, dass von CControlBar abgeleitete Controls, die immer liefen, nach dem Kompilieren mit VS2010SP1 nicht mehr angezeigt werden.
Ein einfaches Beispiel ist unter CodeGuru zu finden.
Ich habe jetzt mal noch in der Spätschicht das Problem weiter eingekreist und mit allen Details in der englischen Newsgroup eingestellt:
http://social.msdn.microsoft.com/Forums/en-ZA/vcgeneral/thread/4d6148c7-8e51-40d4-99d8-dffceb11995f
CControlBar - derived Control not shown after - Migration from VS2008 to VS2010
http://www.codeguru.com/Cpp/W-D/docking/article.php/c1451
Es ist so, wie beschrieben, im Stackoverflow-Artikel
http://stackoverflow.com/questions/4149748/dockable-dialog-bar-derived-from-ccontrolbar-not-working-in-visual-studio-2010
beschrieben:
I'm using a CControlBar derived class to implement dockable windows. The code is derived from an old codeguru example which can be found here:
http://www.codeguru.com/Cpp/W-D/docking/article.php/c1451
This code worked fine but since switching from VS2008 to VS2010 the dockable window does not show up anymore. The standalone example that comes with the article mentioned above also does not work
in VS2010 but behaves correctly in earlier versions of Visual Studio.
Does anybody know of any changes in MFC which could break existing code derived from CControlBar? Anyone else who used the codeguru example above as a basis for their own dockable windows.
Ich habe mir den originale Samplecode heruntergeladen (SourceCode:
Download demo project - 25KB)
und das Projekt einmal mit VS2008 und einmal mit VS2010 übersetzt (musste noch einen UINT Return auf LRESULT-Return ändern).
Dann ist im VS2008-Build nach Drücken des rechten Buttons das ControlPanel am linken Rand zu sehen.
Wenn man den identischen Code
mit VS2010 übersetzt hat, passiert nichts.
Dietmar Mayer - dm01