2

Vista では、Basic テーマのときに IUIFramework::Destroy() を呼び出した後、Vista テーマが失われ、ウィンドウを拡大しても初期領域の外に表示されません。

SimpleRibbon SDK サンプルで簡単に再現できます。simpleribbon.cpp で、WndProc スイッチ ブロックに挿入します。

case WM_KEYUP:
   DestroyFramework();
   InvalidateRect(hWnd, NULL, TRUE);
   break;

コンパイルして実行し、キーを押して、Vista Basic Theme で拡大してみます (Win7 または Vista aero または Windows classic では問題ありません)。

回避する方法

[編集]

調査するいくつかのトラックに満足しますが、調理済みのソリューションは期待していません:-)

4

1 に答える 1

0

リボンコントロールはウィンドウ領域を設定し、リボンの破棄時にそれを削除するのを忘れているようです。

の戻り時にヌルウィンドウ領域を設定IUIFramework::Destroy()すると、問題が解決するようです。

于 2010-04-07T07:59:13.640 に答える