0

誰かがこれで私を助けることができれば、私はとても感謝していますか?エラー メッセージを受け取るためのテキスト ボックスを含むダイアログ ボックスを作成しようとしています。メッセージ マップに ON_WM_CREATE を追加し、デバッグが通過するこの関数を作成しましたが、オブジェクトは表示されません。

int CImportDatatoAPMDlg::OnCreate(LPCREATESTRUCT LpCreateStruct)
{
    if(CWnd::OnCreate(LpCreateStruct) == -1)
    {
        return -1;
    }
    CEdit *MessageBox = new CEdit;

    MessageBox->Create(WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_AUTOVSCROLL,CRect(100, 200, 450, 150), this, 0x1552);

    return 0;
}

ダイアログ ボックスを設計するときに、ダミー ボックスを作成する必要がありますか。残りのコントロールについては既にこれを行っていますか? また、このオブジェクトに番号 ID の組み合わせをどこで与えるのだろうか?

ありがとう、ジェームズ

4

1 に答える 1

1

ダイアログにコントロールを追加するには、通常、VisualStudio リソース エディターを使用する必要があります。手動で行う場合は、オーバーライドされた OnInitDialog メソッドにコントロールを作成して追加します。

BOOL CImportDatatoAPMDlg::OnInitDialog() {
 BOOL bRes = CDialog::OnInitDialog();

   CEdit *MessageBox; // !!! put it into class definition
   MessageBox = new CEdit

   MessageBox->Create(WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_AUTOVSCROLL,CRect(100, 200, 450, 150), this, 0x1552);

   return bRes;
}
于 2012-07-18T17:31:23.943 に答える