我来自this LVCFMT_FIXED_WIDTH 此格式样式有效,但仅在第一列之后。第一列项始终可移动。为什么?我错过了什么吗?
for(int i = 0; i<NUM_COLUMNS; i++)
{
m_ListCtrl.InsertColumn(i,_gszColumnLabel[i], _gnColumnFmt[i] | LVCFMT_FIXED_WIDTH, _gnColumnWidth[i], -1);
}
答案 0 :(得分:3)
第一栏is special出于某种原因:
如果将列添加到索引为0(最左侧列)的列表视图控件中,则始终为LVCFMT_LEFT。在列0上设置其他标志不会覆盖该对齐。因此,如果继续插入索引为0的列,则所有列中的文本都是左对齐的。如果希望第一列右对齐或居中,则可以创建一个虚拟列,然后插入一个或多个索引为1或更高的列,并指定所需的对齐方式。最后删除虚拟列。
也许虚拟列技巧也适用于你的情况?