如何设置listview列间距,另外,如何给listview加网格

时间:2021-10-05 19:35:05
如何设置listview列间距,
另外,如何给listview加网格
望各位大侠指点

10 个解决方案

#1


改行高的话可以通过设置图片大小实现。
加网格的话要设置LVS_EX_GRIDLINES这个扩展风格。比如

http://verinfo-tools.googlecode.com/svn/trunk/vis/Src/CtxMenu/UWListView.pas

procedure TListViewWidget.CreateWindow;
  {Creates the list view's window and sets required extended style}
begin
  // Create the window in inherited method
  inherited;
  // Set required extended style
  ListView_SetExtendedListViewStyle(
    Handle, LVS_EX_GRIDLINES or LVS_EX_FULLROWSELECT or LVS_EX_FLATSB
  );
end;

#2


引用 1 楼 jiangsheng 的回复:
改行高的话可以通过设置图片大小实现。
加网格的话要设置LVS_EX_GRIDLINES这个扩展风格。比如

http://verinfo-tools.googlecode.com/svn/trunk/vis/Src/CtxMenu/UWListView.pas

procedure TListViewWidget.CreateWindow;
  {Creates the list vi……

我问的不是行高,是列间距

#3


列间距?你调整列款就行了

#4


ding

#5


引用 3 楼 bdmh 的回复:
列间距?你调整列款就行了

如何调整列宽啊?

#6


引用 5 楼 jupiter418 的回复:
引用 3 楼 bdmh 的回复:
列间距?你调整列款就行了

如何调整列宽啊?

ListView.Columns[0].width
ListView.Columns[1].width
ListView.Columns[2].width
...

#7


双击ListView选中一个里面有width,毕竟在代码里面改要运行看效果麻烦,直接拖改大小运行就不行了又到默认的50了也不知道为什么

#8


TListView封装的很简单了,加网格线,只需将GridLines设为true即可.

运行时更改列宽, 代码正如6楼的.
设计时更改列宽, 在ListView上点右键, Columns Editor-->弹出的窗口中,选中要调整的列,然后在属性浏览器中设置Width的值即可.

#9


列间距设置列宽度就可以了
ListView.ViewStyle := vsReport;  //列表视图,列分隔线就有了
ListView.GridLines := True;  //行线
ListView.Columns[i].Width := 100; //第i列宽度设为100,列下标从0开始

另外,如果要设置行高/行距,便显示内容更清楚,可以增大字体或通过设置图片的高度
后者更能体现“间距”
ListView.SmallImages.Height := 25;  //设置图标高度为25,每行自动会被“撑高”为25,字体不变的情况下,相当于增大了行间距

#10


该回复于2011-03-17 11:17:48被版主删除

#1


改行高的话可以通过设置图片大小实现。
加网格的话要设置LVS_EX_GRIDLINES这个扩展风格。比如

http://verinfo-tools.googlecode.com/svn/trunk/vis/Src/CtxMenu/UWListView.pas

procedure TListViewWidget.CreateWindow;
  {Creates the list view's window and sets required extended style}
begin
  // Create the window in inherited method
  inherited;
  // Set required extended style
  ListView_SetExtendedListViewStyle(
    Handle, LVS_EX_GRIDLINES or LVS_EX_FULLROWSELECT or LVS_EX_FLATSB
  );
end;

#2


引用 1 楼 jiangsheng 的回复:
改行高的话可以通过设置图片大小实现。
加网格的话要设置LVS_EX_GRIDLINES这个扩展风格。比如

http://verinfo-tools.googlecode.com/svn/trunk/vis/Src/CtxMenu/UWListView.pas

procedure TListViewWidget.CreateWindow;
  {Creates the list vi……

我问的不是行高,是列间距

#3


列间距?你调整列款就行了

#4


ding

#5


引用 3 楼 bdmh 的回复:
列间距?你调整列款就行了

如何调整列宽啊?

#6


引用 5 楼 jupiter418 的回复:
引用 3 楼 bdmh 的回复:
列间距?你调整列款就行了

如何调整列宽啊?

ListView.Columns[0].width
ListView.Columns[1].width
ListView.Columns[2].width
...

#7


双击ListView选中一个里面有width,毕竟在代码里面改要运行看效果麻烦,直接拖改大小运行就不行了又到默认的50了也不知道为什么

#8


TListView封装的很简单了,加网格线,只需将GridLines设为true即可.

运行时更改列宽, 代码正如6楼的.
设计时更改列宽, 在ListView上点右键, Columns Editor-->弹出的窗口中,选中要调整的列,然后在属性浏览器中设置Width的值即可.

#9


列间距设置列宽度就可以了
ListView.ViewStyle := vsReport;  //列表视图,列分隔线就有了
ListView.GridLines := True;  //行线
ListView.Columns[i].Width := 100; //第i列宽度设为100,列下标从0开始

另外,如果要设置行高/行距,便显示内容更清楚,可以增大字体或通过设置图片的高度
后者更能体现“间距”
ListView.SmallImages.Height := 25;  //设置图标高度为25,每行自动会被“撑高”为25,字体不变的情况下,相当于增大了行间距

#10


该回复于2011-03-17 11:17:48被版主删除