在我的应用程序中,有很多对话框一直在打开和关闭。对话框是非模态的。为了节省一些性能,我们正在“回收”一些更复杂的控件。当一个对话框关闭时,控件不会被销毁,但它们的指针存储在一个数组中,以便在打开另一个对话框时可以重用它们。
问题是控件在新对话框中定位后,并没有收到所有的消息。例如,不再发送消息WM_DRAWITEM
(控件派生自)。另一方面,仍在到来CListCtrl
。WM_LBUTTONDOWN
就好像控件不再知道它的类一样。NC 区域(边框和列表标题)正在正确绘制。
有没有人有类似的问题?有什么问题?控件可以以这种方式“分离”和“重新连接”吗?
问问题
80 次
1 回答
0
为了让 CListCtrl 响应 WM_DRAWITEM 图像,它需要具有 LVS_OWNERDRAWFIXED 样式。你确定你设置好了?
从http://msdn.microsoft.com/en-us/library/windows/desktop/bb774739(v=vs.85).aspx看来,它似乎只有在报告视图中才会发生(我觉得很奇怪! )。
于 2014-04-05T04:59:57.490 回答