最近VS2003からVS2008に移植したMFCMDIアプリケーションがあり、同時にStingray Objective Studio2006v2からv10.1に移行しました。以前のバージョンのアプリケーションでは、複数のビューを開いていた場合、ウィンドウメニューには、使用可能なビューの列挙リストが表示されます。たとえば、1 MyViewA、2 MyViewBなどです。多数のビューがある場合は、また、ビューを選択できるようにするWindows...メニューオプションも表示されます。これはもう起こりません。これは私のGUIレベルの回帰テストのいくつかを破っています。私の推測では、この機能はCMDIFrameWndまたはSECMDIFrameWndのいずれかによって実装されましたが、ドキュメントでそれへの参照を見つけることができませんでした。この機能を取り戻す方法を知っている人はいますか?
質問する
467 次
1 に答える
1
まず、ClassWizard を使用して新しい MDI アプリケーションを作成し、不足している機能が存在するかどうかを確認します。もしそうなら、周りをつついてみて、何が違うのかわかるかどうか見てください. 注目すべき場所の 1 つは、メイン メニューのメニュー リソースです。
必要なものを提供する機能が組み込まれていない場合は、次の疑似コードを使用してメニューを動的に構築できます。
foreach registered CDocumentTemplate
foreach document
foreach view
{
if (numberOfWindowMenuItems < 5)
{
Add menu item
}
else
{
Add "Windows..." menu item
break all loops;
}
于 2009-08-07T01:29:05.770 に答える