Combo Box 控件变量 的初始化

ilovesnow 2003-09-14 02:13:59
请问如何进行 Combo Box 控件变量 的初始化?

我设计了一个对话框类CInPutDlg,里面有5个Combo Box 控件变量,m_com1,...

我希望:用户选择了combo box 下拉框中相应的条目后,依次记录下他们的内容,入库!下面是我的代码,及错误信息!望高人指点!

CInPutDlg tempDlg;

if( tempDlg.DoModal() == IDOK)
{
int nIndex = tempDlg.m_com1.GetCurSel(); ///运行到这儿就死了,Assert() 异常,Retry, cancle , End, tempDlg 的地址好像是000000 控件m_com1...等的地址也是000000


...
}



调试时,
...全文
113 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kingore 2003-09-15
  • 打赏
  • 举报
回复
要删除不必要的对象可以添加消息:WM_DESTROY
在函数:CXXXdialog::OnDestroy(){...}中处理。
czlvc 2003-09-14
  • 打赏
  • 举报
回复
int m_index = tempDlg.m_com1.GetCurSel();
这点我写错了
应该是:int m_index = m_com1.GetCurSel();
czlvc 2003-09-14
  • 打赏
  • 举报
回复
这个你思路有问题
你可以在你CInPutDlg这个类中加个全局变量 例如:int m_index;
在你的类中处理下面的代码!!!
int m_index = tempDlg.m_com1.GetCurSel();
然后:
添加下面的代码:
if( tempDlg.DoModal() == IDOK)
{
int nIndex = tempDlg.m_index;
}

模式对话框的编程基本上都是这样来传递变量的~~~~~~~~~~~~
limd 2003-09-14
  • 打赏
  • 举报
回复
OK,上面都回答得比较正确
bluebohe 2003-09-14
  • 打赏
  • 举报
回复
在OnOK里面设置一个成员变量等于组何况的选择就好了
你自己建析构函数就可以,或者导出OnDestroy函数删除就好了
ilovesnow 2003-09-14
  • 打赏
  • 举报
回复
各位我想再问一个问题:

我有一个基于对话框的类,我在里面建一个链表(手工建的),请问如何删除一些不要的对象?
(这种 基于对话框的类 好像没有析够函数), 我可以建一个析够函数么?

我该怎么办?
vcforever 2003-09-14
  • 打赏
  • 举报
回复
对话框被销毁了!
你的ComboBox的句柄当然是空了!
像楼上说的那样就行了!
不用判断他是否等于IDOK!

祝你成功!
Kingore 2003-09-14
  • 打赏
  • 举报
回复
在用的时候只要。
CInputdlg dlg;
dlg.DoModal();
就可以了。
Kingore 2003-09-14
  • 打赏
  • 举报
回复
不要在
if(tempDlg.DoModal()==IDOK)
{
...
}
处理。
在CInputDlg的OnOK函数中处理。!!!
OCSDNO 2003-09-14
  • 打赏
  • 举报
回复
也就是说那个时候tempDlg已经销毁了,你可以在tempDlg内部把那个值保存下来!
OCSDNO 2003-09-14
  • 打赏
  • 举报
回复
tempDlg.m_com1.GetCurSel();

那个时候DLG已经销毁了。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧