函数说明

GUICtrlCreateListView

在GUI上创建一个 ListView 控件。

GUICtrlCreateListView ( "文本", 左侧, 上方 [, 宽度 [, 高度 [, 风格 [, 扩展风格]]]] )

 

参数

文本 栏目头的标题。
左侧 控件左侧的位置。若此值为 -1 则根据 GUICoordMode 的设置来计算左侧位置。
上方 控件上方的位置。若此值为 -1 则根据 GUICoordMode 的设置来计算上方位置。
宽度 [可选参数] 控件的宽度(默认值为上一个控件的宽度)。
高度 [可选参数] 控件的高度(默认值为上一个控件的高度)。
风格 [可选参数] 指定控件的风格。请查看附录中关于 GUI 控件风格 的说明。

默认值(-1):$LVS_SHOWSELALWAYS, $LVS_SINGLESEL
强制性风格: $LVS_REPORT
扩展风格 [可选参数] 指定控件的扩展风格。请查看附录的 扩展风格表

 

返回值

成功: 返回控件标识符(控件ID)。
失败: 返回值为0。

 

注意

若要添加项目到 ListView 控件请使用 GUICtrlCreateListViewItem

ListView 将总是以“详细信息”视图显示(这是因为 LVS_REPORT 风格是强制性的)。
若要调整列的大小(宽度)则可在列的标题中补一些空格。另外,列的宽度也可能会在使用 GUICtrlCreateListViewItem 后根据所添加项目的大小而扩大。每个列的宽度最多能达25个字符。在使用 GUICtrlSetData 更新数据时并不会自动调整项目大小。

其它视图以及点击列名排列项目功能目前尚未实现。

若要使整行项目选中请使用 扩展风格 LVS_EX_FULLROWSELECT。

要在默认风格的基础上添加一个新的风格可使用 BitOr($GUI_SS_DEFAULT_LISTVIEW, 新风格,...)。

 

相关

GUICtrlCreateListViewItem, GUICoordMode(选项), GUICtrlSetData, GUIGetMsg

 

示例


#include <GUIConstants.au3>

GUICreate("listview 项目",220,250, 100,200,-1,$WS_EX_ACCEPTFILES)
GUISetBkColor (0x00E0FFFF)  ; 更改背景颜色

$listview = GUICtrlCreateListView ("col1  |col2|col3  ",10,10,200,150);,$LVS_SORTDESCENDING)
$button = GUICtrlCreateButton ("Value?",75,170,70,20)
$item1=GUICtrlCreateListViewItem("item2|col22|col23",$listview)
$item2=GUICtrlCreateListViewItem("item1|col12|col13",$listview)
$item3=GUICtrlCreateListViewItem("item3|col32|col33",$listview)
$input1=GUICtrlCreateInput("",20,200, 150)
GUICtrlSetState(-1,$GUI_ACCEPTFILES)   ; 允许拖放
GUISetState()
GUICtrlSetData($item2,"ITEM1",)
GUICtrlSetData($item3,"||COL33",)
GUICtrlDelete($item1)

Do
  $msg = GUIGetMsg ()
    
   Select
      Case $msg = $button
         MsgBox(0,"listview item",GUICtrlRead(GUICtrlRead($listview)),2)
      Case $msg = $listview
         MsgBox(0,"listview", "clicked="& GUICtrlGetState($listview),2)
   EndSelect
Until $msg = $GUI_EVENT_CLOSE