楼主 zzmxy |
Q: ListView中,怎么实现双击列标则可以自动排序?具体要求如下效果: A: 使用ListView1_ColumnClick,并设置相关的排序属性即可实现,具体代码如下:
说明: 1. SortKey SortKey的语法是:.SortKey [= ] 当integer=0时,使用ListItem的Text属性进行排序; 当integer≥1时,使用SubItem的Text属性进行排序; 由于 ColumnHeader.Index 是从1、2、3 这样的整数进行标记,因此通过ColumnHeader.Index - 1 来实现对ListItem或SubItem的排序。 2. SortOrder SortOrder有两种,lvwAscending(升序) 和lvwDescending(降序),其中lvwAscending=1,lvwDescending=0; 我们使用 IIf(.SortOrder, 0, 1),就实现从 升序 → 降序,或降序 → 升序 的切换。 3. 排序方法 根据第1点,SortKey的说明,我们可以看到,排序是按Text方式进行的,当对数值进行排序时,就并非我们通常的排序结果, 比如:2、11、23、4,当按升序排序,则结果为:11、2、23、4; 因此,如果我们想按数值的大小进行排序,那就要用Format(数值,"00")的方式,将数值整理为02、11、23、04,排序后,就可以得到02、04、11、23的结果。 附件: ListView排序zz.rar |
2楼 水星钓鱼 |
学习下 |
3楼 亡者天下 |
学习一下 |
4楼 WDZ |