お世話になっています、dtです。
MainFrame.cppにダイアログバー(m_wndDlgBar)を作成しています。
コンボボックスを貼り付けています。
自作クラス(CStructCls_Poly)から、
コンボボックスのリストボックスへ文字列を追加します。
CStructCls_Poly::SetDraw_PolyStruct()
{
CMainFrame *pFrame = (CMainFrame*)AfxGetMainWnd();
CComboBox *pCombo;
pCombo = (CComboBox *) pFrame->m_wndDlgBar.GetDlgItem(IDC_COMBO1);
pCombo->AddString(北海道);
pCombo->AddString(本州);
pCombo->AddString(四国);
pCombo->AddString(九州);
}
error C2065: 'IDC_COMBO1' : 定義されていない識別子です。
といメッセージが出ました.
どう対応すればいいでしょうか。
ちなみに、同じコードでViewクラス、Docクラスに置くと正常に追加されました。
そういうメッセージがなかった.
よろしくお願いします.
> error C2065: 'IDC_COMBO1' : 定義されていない識別子です。
MainFrame.cpp で Resource.h をインクルードしていないのでは?
Blueさん、
ご返事ありがとう。
>MainFrame.cpp で Resource.h をインクルードしていないのでは?
MainFrame.cppに#include resource.hを追加したのですが、
同じエラーが出っています。
同じコードで、ViewクラスとDocクラスに置くと正常に動きますが、
resource.hがなかったのです,
わざわざ#include resource.hを追加しなくてもよい気がします。
(resource.hがどこかに読んでいます、どういう仕組みがわかりません)
よろしくお願いします.
CStructCls_Polyが定義されているファイルが、MainFrame.cpp ですか?
違う場合、その定義されているファイルで、#include resource.h を記述します。
> 同じコードで、ViewクラスとDocクラスに置くと正常に動きますが、
MainFrame.cpp では CXXXApp クラスのある XXX.h をインクルードしているのでOKでし
たね。
> 自作クラス(CStructCls_Poly)から、
> error C2065: 'IDC_COMBO1' : 定義されていない識別子です。
のでるファイルが MainFrame.cpp でなければRAPTさんの云うとおりですね。
ではない場合は、クラスの依存関係がこれだけではわからないので、
どのファイルになんの宣言、定義があるのか、それがどのような順番なのか等詳細に教
えてください。
RAPTさん、Blueさん:
ご返事ありがとう.
>CStructCls_Polyが定義されているファイルが、MainFrame.cpp ですか?
>違う場合、その定義されているファイルで、#include resource.h を記述します。
>のでるファイルが MainFrame.cpp でなければRAPTさんの云うとおりですね。
CStructCls_Poly.cppに、#include resource.hを追加しました、
うまく動きました。
ありがとうございました。