例1:使用结构体
定义全局变量(本文件中)
struct PartType
{
int KeyIndex;
CString KeyValue;
};
int arrAllValue[]={1,2,3};
CString arrAllKey[]={L"4",L"5",L"6"};
BOOL CComBoxTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
for (int i = 0; i<3; i++)
{
int iAddString = m_Combox.AddString(str[i]);
m_Combox.SetItemData(iAddString ,(DWORD)(&str[i]));
}
CComboBox* pay = (CComboBox*)(this->GetDlgItem(IDC_COMBO1));
CString p = *((CString*)pay->GetItemData(1));
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
在本文件中
void CComBoxTestDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CComboBox* pay = (CComboBox*)(this->GetDlgItem(IDC_COMBO1));
PartType *p = ((PartType*)pay->GetItemData(1));
int y1 = p->KeyIndex;
CString str = p->KeyValue;
int y2 = 0;
}
例2:一般使用方法
CString str[] = {L"a",L"b",L"c"};
BOOL CComBoxTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
for (int i = 0; i<3; i++)
{
int iAddString = m_Combox.AddString(str[i]);
m_Combox.SetItemData(iAddString ,(DWORD)(&str[i]));
}
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
在本文件中
void CComBoxTestDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CComboBox* pay = (CComboBox*)(this->GetDlgItem(IDC_COMBO1));
CString p = *((CString*)pay->GetItemData(1));
}