在用MFC编一个计算窗口,其中打算加入个组合框,做个下拉菜单,能够选择不同材料。结果弹出来下图
这到底是什么情况,运行后点击下拉按钮就弹出来这个东西
我觉得你的组合框响应方式有些问题。
void CXxxDlg::OnEditchangeCombo1() ,这个函数是响应组合框的编辑内容发生改变时响应的。而在第一次响应时,组合框是没有选定内容的,换句话说就兄轿是,m_cb.GetCurSel() 的值是-1,这样 m_cb.GetLBText 肯定会发生异常。从你发来的图片看,winctrl1.cpp的第184行,应该处于CComboBox 的成员函数实现部分,因为不清楚你的vc版本,所以不清楚具体是哪个成员函数的问题。斗袭
从你的需求来看,为解决这个问题,应该响应组合框选择改变这个消息,而不应该响应组合羡销肆框编辑内容改变的消息。详细说,就是在ClassWizerd中,选择对话框的组合框控件,在右边对话框中选择CBN_SELCHANGE,双击,生成函数:void CXxxDlg::OnSelchangeCombo1() ,在这个函数中,添加OnEditchangeCombo1() 的代码,再将OnEditchangeCombo1() 函数变成空函数(即不响应组合框编辑内容改变)。你可以试一下。
贴代码,不要贴结果。点你点下拉菜单触发消息的代处理代码。
这是崩了,如果有链表还是看看链表是不是指的有问题