如何让TListView的Column自动改变宽度(100分)

  • 主题发起人 主题发起人 wingsn
  • 开始时间 开始时间
W

wingsn

Unregistered / Unconfirmed
GUEST, unregistred user!
想让Column的宽度根据下面list的item宽度自动改变,就是相当于在column之间
的缝隙上双击的效果,但是它的tListColumn的autosize根本不起作用,也许这个
属性就不是做这个用的,想自己给它发送鼠标双击的消息,但是TListView的Column
没有handle....谁知道怎么实现这个功能?
 
在每次添加Item时,计算出最大宽度,然后设置对应Column的宽度。你看能不能满足要求。
 
想过这个方案,但是计算宽度不好做,还跟选的字体有关系,
有的不同的字符占用的宽度好像还不一样.....不知道column
缝隙上的双击自动调整宽度是怎么实现的 :(
 
调用 TCanvas 的 TextWidth 方法,可以根据其当前的字体计算指定字符串的宽度:

ListView1.Canvas.TextWidth('Hello');

 

Similar threads

后退
顶部