我动态创建了一个CCombBox控件,向里面添加了几个字符串,无法显示,为啥?
代码如下:
CComboBox m_combType;
m_combType.Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST|CBS_HASSTRINGS|CBS_SIMPLE,CRect(900,60,975,90),this,642);
m_combType.AddString("A001");
m_combType.AddString("A002");
m_combType.AddString("A003");
m_combType.AddString("A004");
直接添加控件我是知道,但是动态添加偶就不清楚了,大家帮我看下···
代码如下:
CComboBox m_combType;
m_combType.Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST|CBS_HASSTRINGS|CBS_SIMPLE,CRect(900,60,975,90),this,642);
m_combType.AddString("A001");
m_combType.AddString("A002");
m_combType.AddString("A003");
m_combType.AddString("A004");
直接添加控件我是知道,但是动态添加偶就不清楚了,大家帮我看下···
解决方案 »
- 在线等高手作答。100分敬献
- WIN7下编程方式
- 求给MP3播放器增加音量控制的方法还有让播放循环的方法?
- 用什么函数获得菜单是否打钩,以便反复执行
- VC++6.0中用OpenGL绘制NURBS曲面程序,为什么显示不出来正确的结果呐?!
- 怎么用ADO远程访问数据库?
- 有关Edit Box 多行显示的问题,有兴趣的可以看看,尽量都给分
- HTMl Help 一编译就提示“打开空文档失败”(在线给分)
- 为什么我用CListCtrl类时使用GetItemCount()方法得不到Item的行数?用什么方法可以得到当前选定行的ID号?
- 新手:在edit里输入字符“aaa”,转换成float时如何使提示变为中文?
- dll里的查询数据库的查询语句存在参数如何写?
- 有没有专门的类库可以实现java与C++之间的序列化通信
//这个我定义在CXXXDlg的public中
CComboBox m_combType;
m_combType.Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST|CBS_HASSTRINGS|CBS_SIMPLE,CRect(900,60,975,90),this,642);
m_combType.AddString("A001");
m_combType.AddString("A002");
m_combType.AddString("A003");
m_combType.AddString("A004");
//这段代码在CXXXDlg的OnInitDialog中
SetCurSel(0)
public:
CComboBox m_combType; //这句需要定义在头文件中,不然定义在函数体中,函数销毁就没了
//下面的动态生成,你可以写在OnitDiag中,也可以写在自定义的函数体中,没有关系
if(m_combType == NULL)
{
m_combType.Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST|CBS_HASSTRINGS|CBS_SIMPLE,CRect(900,60,975,90),this,642);
//CRect(900,60,975,90)这个范围比较的大,会导致你创建成功,但是看不到控件(越出窗口范围了),
//你可以修改下,写成CRect(0,0,100,100);试验下
if(m_combType != NULL)
{
//你下面四句执行了都没有报错,说明你创建成功了
m_combType.AddString("A001");
m_combType.AddString("A002");
m_combType.AddString("A003");
m_combType.AddString("A004");
}
else
{
AfxMessageBox("创建失败!");
}
}
else
{
AfxMessageBox(“已经创建了”);
}
//所以我估计,你是创建成功了,但是没有显示在适当的位置,你没有看到,你可以看下句柄是不是空的. 还有就是你的ID号是不是重复