我该怎么做? CListCtrl
自动调整列的宽度?通常,当列表中的项目太长时,后端会从视图中消失,并且用户手动必须调整相应列的宽度。
有没有办法通过代码来做到这一点?
我该怎么做? CListCtrl
自动调整列的宽度?通常,当列表中的项目太长时,后端会从视图中消失,并且用户手动必须调整相应列的宽度。
有没有办法通过代码来做到这一点?
自动调整列的大小很容易:
for(int i = 0;i < pListCtrl->GetHeaderCtrl()->GetItemCount();++i)
pListCtrl->SetColumnWidth(i,LVSCW_AUTOSIZE_USEHEADER);
这将优化列。
自动调整列的大小很容易:
for(int i = 0;i < pListCtrl->GetHeaderCtrl()->GetItemCount();++i)
pListCtrl->SetColumnWidth(i,LVSCW_AUTOSIZE_USEHEADER);
这将优化列。
你有“无滚动”选项吗?默认情况下(“无滚动”选项关闭),如果项目太长,则会出现滚动条。
我假设你是指报告模式中的列表控件?遗憾的是,没有办法自动调整列的大小。您可以执行的操作(我在某些地方执行的操作)是在输入项目时计算列的宽度,然后处理WM_SIZE并调整列的大小。然而,这会导致用户丢失的更改,因此如果用户没有进行任何更改,您可能需要更好的算法,如跟踪,如果他没有调整大小。从UX的角度来看,它并不是很好,我只在一定数量的情况下使用它,其中行为在UI的其余部分的上下文中是有意义的。