CListBox::AddString(..)的奇怪问题:显示的时候每个字符串是双份

捕鲸叉 2012-08-10 08:48:58
如下代码
wchar_t* szTxt[] = 
{
L"老子他说",
L"职场智慧",
L"果壳中的宇宙",
L"PE文件探秘",
L"物理学的困惑",
L"教育心理学",
L"ARM体系结构",
L"DSP的FPGA实现",
};

int sz = _countof(szTxt);
for (int i = 0; i < sz; i++)
m_wndListBox.AddString(szTxt[i]);


显示时每个字符串都是双份,即有两个“老子他说”,“职场智慧”等等。
我的是WindowsXp/VC2008
请问原因是什么?该如何解决?


...全文
190 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cs_shaonian 2013-04-09
  • 打赏
  • 举报
回复
请问这个问题怎样解决啊
捕鲸叉 2012-08-11
  • 打赏
  • 举报
回复
发现了原因,ListBox钩子函数有问题
捕鲸叉 2012-08-10
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
你这个代码是没问题的,可能是你调用了两次。
可在最前面加上m_wndListBox.ResetContent();
[/Quote]

我上面贴的代码是在对话框的OnInitDialog()函数里面,只调用一次,sz=8
贪玩的老鼠 2012-08-10
  • 打赏
  • 举报
回复
你这个代码是没问题的,可能是你调用了两次。
可在最前面加上m_wndListBox.ResetContent();
傻X 2012-08-10
  • 打赏
  • 举报
回复
整体代码位置呢?
我估计楼主发完贴,自己就发现问题了
  • 打赏
  • 举报
回复
sz的值是多少?

15,979

社区成员

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

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