我的代码是:
DISPLAY_DEVICE DisplayDevice;
BOOL res=TRUE;
DWORD iDevNum;
CString device;
DisplayDevice.cb = sizeof(DISPLAY_DEVICE);
for(iDevNum=0;res!=FALSE;iDevNum++)
{ res = EnumDisplayDevices(NULL,iDevNum,&DisplayDevice,0);
device =DisplayDevice.DeviceString;
if(res)
m_DisplyDev.AddString(device); }
其中的m_DisplyDev是CComboBox的对象,可是运行的时候ComboBox中却没有显示出任何东东,为什么啊为什么?我调试的时候device字符串是对的.而且AddString返回值也是对的,但就是显示不出来,我用的ComboBox是droplist型的不要sort,而且我也拉得足够大了。
DISPLAY_DEVICE DisplayDevice;
BOOL res=TRUE;
DWORD iDevNum;
CString device;
DisplayDevice.cb = sizeof(DISPLAY_DEVICE);
for(iDevNum=0;res!=FALSE;iDevNum++)
{ res = EnumDisplayDevices(NULL,iDevNum,&DisplayDevice,0);
device =DisplayDevice.DeviceString;
if(res)
m_DisplyDev.AddString(device); }
其中的m_DisplyDev是CComboBox的对象,可是运行的时候ComboBox中却没有显示出任何东东,为什么啊为什么?我调试的时候device字符串是对的.而且AddString返回值也是对的,但就是显示不出来,我用的ComboBox是droplist型的不要sort,而且我也拉得足够大了。
UpdateData(FLASE);
解决方案有一个:
尝试用GetDlgItem()取得ccombobox的句柄后,
再加之。