如何动态更新C ++ ListView?

时间:2015-02-10 13:21:33

标签: c++ user-interface listview winapi

我希望将数据插入事件的Listview(例如收到新消息),而不是通过按钮点击。这意味着在整个软件运行时间内,将不断添加和删除行。

我该怎么做呢?我可以在创建ListView时添加行,例如

LVITEM lvi;
lvi.mask = LVIF_TEXT;
lvi.iItem = 0;
lvi.iSubItem = 0;
lvi.pszText = bob;

ListView_InsertItem(list, &lvi);

但是,如果我想在运行中更新,我不知道我需要将哪个Windows消息处理程序放入其中。例如。它会进入WM_PAINT吗? WM_NOTIFY?等

我在没有MFC的情况下使用Win32 listview。

提前致谢!

1 个答案:

答案 0 :(得分:0)

你在想这个。只要您的计时器触发(或其他一些事件),只需修改列表即可。其余列表视图控件知道它需要重新绘制,因此将使自身无效。这将引发一个绘制周期,因此列表视图窗口将被要求绘制自己。