请教关于ComboBox控件的问题 不可能的呀,InsertString ( -1,... );或AddString(...) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我通过msdn没有解决问题,知道请指点一下!!! 我的方法为: char* filename="paytype.txt"; char buffer[128]; int i=0; FILE* Rpaytype=fopen(filename,"r"); if(Rpaytype==NULL) { fclose(Rpaytype); return -1 ; } while (fgets(buffer,sizeof(buffer),Rpaytype)) { //m_CmbCtrl.AddString(buffer); m_CmbCtrl.InsertString(-1,buffer); i++; } fclose(Rpaytype); return 0;错在那里??? 如果确保while 循环中的buffer有的话,那或许是应该在对话框中插入组合框后没有对组合框的高度进行设置,所以没有显示,尽管你已经加入了内容。 我这样设置m_CmbCtrl.SetItemHeight(-1,20); 还是不行,高度应设为多少? 加入方法没有错误,但需要设置一下ComboBox的下拉框高度才能有下拉框内容的显示。设置为只读:只需要在ComboBox的属性框中“Styles”页里的Type改为Drop List风格即可。 直接在对话框资源编辑器中点击ComboBox控件的下拉按钮部分,鼠标会变成“上下箭头”标志,然后就可以调整下拉框的大小了。 谢谢Nilaix这样可以显示了,但dialog每显示时combox总会弹出一个列表,我希望不弹出列表(除非我单击箭头标志),只在combox中显示第一个插入的值。这样能实现吗? 不太明白你的意思。Dialog显示的时候ComboBox会自动弹出一个列表?显示第一个插入的值:m_CmbCtrl.SetCurSel(0); 当然能实现。1.可以直接在Combox属性对话框中添加文字内容:在“Data”选项里面直接添加。 ( 注意:换行要用CTRL+ENTER。) 也可以通过AddString(...)和InsertString(...)在程序中添加。2.自动弹出列表是因为你的“Style”选项中的Type选成了“Simple”,只要改成其他的就可以 了,如果要只读,就必须选成“Drop List”风格。3.要显示第一个插入的值,首先要保证你第一个插入的值为第0行。 Like this: m_ComboBox.InsertString(0,"..."); and then: m_ComboBox.SetCurSel(0); 提取外边界 如何将VC6中的对话框复制到VS2010 window异常处理机制-过程,求指教 api启动线程错误的问题 VC6.0中的一个连接错误,请教如何解决? 谁有<<精通Visual C++图像编程>>电子书及配套光盘,100分,谢谢啦 菜鸟问题 求援: 请问怎样可以在没有弹出MessageBox的情况下,当有错误发生时,系统发出"叮"一声警告? 调查 dll工程里设断点停不下来啊 help://怎样动态加载ODBC数据源? 关于IDispatch接口Invoke的使用
char* filename="paytype.txt";
char buffer[128];
int i=0;
FILE* Rpaytype=fopen(filename,"r");
if(Rpaytype==NULL)
{
fclose(Rpaytype);
return -1 ;
} while (fgets(buffer,sizeof(buffer),Rpaytype))
{
//m_CmbCtrl.AddString(buffer);
m_CmbCtrl.InsertString(-1,buffer);
i++;
}
fclose(Rpaytype);
return 0;
错在那里???
这样可以显示了,但dialog每显示时combox总会弹出一个列表,我希望不弹出列表(除非我单击箭头标志),只在combox中显示第一个插入的值。这样能实现吗?
1.可以直接在Combox属性对话框中添加文字内容:在“Data”选项里面直接添加。
( 注意:换行要用CTRL+ENTER。)
也可以通过AddString(...)和InsertString(...)在程序中添加。
2.自动弹出列表是因为你的“Style”选项中的Type选成了“Simple”,只要改成其他的就可以 了,如果要只读,就必须选成“Drop List”风格。
3.要显示第一个插入的值,首先要保证你第一个插入的值为第0行。
Like this: m_ComboBox.InsertString(0,"...");
and then: m_ComboBox.SetCurSel(0);