1

だから、ここに私のコードがあります(簡単にするために、すべてを1つのファイルに入れました):

#include <afxwin.h>
#include "resource.h"

class CMainWnd : public CFrameWnd
{
};

class CApp : public CWinApp
{
public:
    virtual BOOL InitInstance()
    {
        CMainWnd* wnd = new CMainWnd();
        if (!wnd->Create(0, _T("test"))) return FALSE;
        m_pMainWnd = wnd;
        wnd->ShowWindow(SW_SHOW);
        wnd->UpdateWindow();
        return TRUE;
    }
};

CApp app;

デフォルトのパラメーターとタイトル「test」を持つ単純なウィンドウを作成します。完璧に動作します。しかし、リソースからウィンドウをロードしたいので、それに何かを入れることができます。私は置き換えます:

        if (!wnd->Create(0, _T("test"))) return FALSE;

        if (!wnd->LoadFrame(IDD_CLIENTWINDOW)) return FALSE;

(IDD_CLIENTWINDOWリソース内のダイアログの ID です)。LoadFrame は FALSE を返し、プログラムは終了します。出力にデバッグ メッセージがあります。

Warning: failed to load menu for CFrameWnd.

しかし、私が作成したダイアログにはメニューがありませんIDD_CLIENTWINDOW。フレームを正しくロードするにはどうすればよいですか? 私は何が欠けていますか?

4

1 に答える 1