Delphi 为什么是TListView';在切换ViewStyle之前,是否用省略号截断s节点文本?

Delphi 为什么是TListView';在切换ViewStyle之前,是否用省略号截断s节点文本?,delphi,vcl,Delphi,Vcl,有人能帮我理解为什么TListView显示的标签在程序启动时会被省略号截断,但在切换到vsIcon并返回后会完全显示出来 再一次?我不想要任何截断或椭圆 编辑1:列[0]。自动调整大小为TRUE,MaxWidth为50,Width为50 编辑2:更正左侧屏幕截图,使源文本与右侧相同 短暂性脑缺血发作 假设您使用的是ViewStyle=vsReport,请确保定义的列的宽度足以容纳最长的文本值。TListColumn.AutoSize并不总是正常工作,尤其是在初始加载Listview时。下面的Pe

有人能帮我理解为什么TListView显示的标签在程序启动时会被省略号截断,但在切换到vsIcon并返回后会完全显示出来 再一次?我不想要任何截断或椭圆

编辑1:列[0]。自动调整大小为TRUE,MaxWidth为50,Width为50

编辑2:更正左侧屏幕截图,使源文本与右侧相同

短暂性脑缺血发作


假设您使用的是ViewStyle=vsReport,请确保定义的列的宽度足以容纳最长的文本值。TListColumn.AutoSize并不总是正常工作,尤其是在初始加载Listview时。

下面的Peter在Embarcadero论坛()上发布了一个答案,指向一年前在此处提出的相同问题:

概要是手动设置列宽:

    Uses CommCtrl;

    ListView_SetColumnWidth( listview.handle, 0, NewWidthOfColumnInPixels );

我不知道,但这是一个有趣的问题:)书签。你使用的是什么版本的Delphi和Windows?主题化应用,还是非主题化应用?改变这一点会有所不同吗?