关于MFC对话框的问题

Jason_YF 2011-05-20 01:59:12
我用vc++ 6.0新建了一个基于对话框的应用程序,其中对话框设置有一个List Box(列表框),其成员变量名为(CListBox)m_wordlist, 一个Edit Box(编辑框)其成员变量名为(CString)m_word以及四个按钮,其中一个按钮的为 ADD,对应的消息响应函数为OnAdd().当我在OnAdd()函数中添加如下代码时

void CWordsManageDlg::OnAdd()
{
// TODO: Add your control notification handler code here
CString wordstr;
wordstr = m_word;
m_wordlist.AddString(wordstr);
}

编译运行后,在编辑框中输入单词,点击ADD按钮后列表框没有出现单词,测试了一下,发现我输入的单词没有转给m_word变量,请问一下问题出现在哪里,怎么解决?

...全文
59 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jason_YF 2011-05-20
  • 打赏
  • 举报
回复
嗯,原来不是我的思路出现的问题,而是忘了更新窗口,小失误~!谢谢大家热心的回复~
maoxing63570 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 fengfeihyf 的回复:]
m_word不是编辑框的ID,是给他赋予的一个CString类对象。当我们输入字符串到编辑框,然后点击ADD按钮的时候,程序不是把字符串赋给m_word吗?而我在ADD()中用MessageBox显示m_word时,运行发现m_word是空的。
希望大家写程序出来给我看吧
[/Quote]

void CWordsManageDlg::OnAdd()
{
// TODO: Add your control notification handler code here
CString wordstr;
UpdateData();
wordstr = m_word;
m_wordlist.AddString(wordstr);
}
这样看下

Jason_YF 2011-05-20
  • 打赏
  • 举报
回复
m_word不是编辑框的ID,是给他赋予的一个CString类对象。当我们输入字符串到编辑框,然后点击ADD按钮的时候,程序不是把字符串赋给m_word吗?而我在ADD()中用MessageBox显示m_word时,运行发现m_word是空的。
希望大家写程序出来给我看吧
c_losed 2011-05-20
  • 打赏
  • 举报
回复
OnAdd()函数:
首先获取ListBox里面的item 如果你本身用容器存着也可以
然后处理列内容显示
最后UpdateData


bdmh 2011-05-20
  • 打赏
  • 举报
回复
m_word是文本框的id吗,那样不能直接赋值啊,你要根据m_word找到CEdit*,指针,然后用GetWindowText取到其中的值
maoxing63570 2011-05-20
  • 打赏
  • 举报
回复
调用下UpdateData看下

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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