如何獲取動態創建的CComboBoxes中的CBN_SELCHANGE ..我使用了一個CComboBoxes數組。CBN_SELCHANGE動態創建組合框
MyCComboBox * p_ComboBoxes = new MyCComboBox[numberOcComboBoxes]; //numberOcComboBoxes determined at rumtime
消息映射MyCComboBox的
BEGIN_MESSAGE_MAP(MyCComboBox , CComboBox)
ON_CONTROL_REFLECT(CBN_SELCHANGE, &CTestDlg::OnCbnSelchange)
END_MESSAGE_MAP()
void CTestDlg::OnCbnSelchange()
{
this->GetDlgCtrlID(); // Get The ComboBox ID;
CString sText;
p_ComboBoxes[0].GetLBText(p_ComboBoxes[0].GetCurSel() , sText); // I can't access like this
}
//初始化的p_ComboBoxes陣..
for (int i = 0 ;i < iNumber ; i++)
{
p_ComboBoxes[i].Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWN,
CRect(10 + MY_PIC_ADDITIONAL_WIDTH,iItemDrawHeight,10 + MY_PIC_ADDITIONAL_WIDTH +MY_PIC_PROPERTY_WIDTH
,iItemDrawHeight +MY_PIC_HEIGHT), this, pImageControlPropertyID[i]);
iItemDrawHeight += MY_PIC_PROPERTY_ADDITIONAL_HEIGHT;
}
我無法訪問選定的文本它給了我「訪問衝突讀取位置0x00000020「錯誤..
你確定'GetCurSel'不返回'CB_ERR'嗎? – 2013-03-12 10:27:09
沒問題,我無法訪問CComboBox數組。 – 2013-03-12 10:29:35
你什麼時候初始化'p_ComboBoxes'? – 2013-03-12 10:31:26