CListCtrl控件消息事件中处理的信息存在延迟

我使用HDN_ENDDRAG拖曳表头,HDN_ENDTRACK拖动分割线交,然后在这个消息中处理事件,但是此时获取的列表表头信息还是拖动之前的,有什么办法能处理?

 

 

你可以在HDN_ENDDRAG或HDN_ENDTRACK事件处理函数中重新获取表头的信息,以确保它是最新的。你可以使用ListView_GetHeader()函数获取表头句柄,然后使用Header_GetItem()函数获取各个列的信息。另外,在拖曳结束之后,你可以使用ListView_GetColumn()函数获取各个列的宽度和顺序,以确定最终的布局。