函数参考


_GUICtrlListView_SetExtendedListViewStyle

设置扩展样式

#Include <GuiListView.au3>
_GUICtrlListView_SetExtendedListViewStyle($hWnd, $iExStyle[, $iExMask = 0])

参数

$hWnd 控件句柄
$iExStyle Extended 控件样式:
$LVS_EX_BORDERSELECT - 项目选定时改变边界颜色
$LVS_EX_CHECKBOXES - 列表视图中启用复选框
$LVS_EX_DOUBLEBUFFER - 双缓冲刷新控件,以减少闪烁
$LVS_EX_FLATSB - 列表视图中启用滚动条
$LVS_EX_FULLROWSELECT - 项目选中时, 该项及其所有子项高亮显示
$LVS_EX_GRIDLINES - 项目和子项显示网格
$LVS_EX_HEADERDRAGDROP - 启用列拖放操作重新排序
$LVS_EX_INFOTIP - 显示工具提示前,发送 $LVN_GETINFOTIP 通知信息
$LVS_EX_LABELTIP - 如果没有设置,在大图标视图中仅展开部分隐藏的标签
$LVS_EX_MULTIWORKAREAS - 定义一或多个工作区之前,控件将不会自动排列图标
$LVS_EX_ONECLICKACTIVATE - 点击项目时,控件发送 $LVN_ITEMACTIVATE 消息
$LVS_EX_REGIONAL - 控件区项目仅包含图标及文本
$LVS_EX_SIMPLESELECT - 在图标视图中,移动控件的状态图像到右上角
$LVS_EX_SUBITEMIMAGES - 允许显示子项目图像
$LVS_EX_TRACKSELECT - 允许控件热跟踪选择
$LVS_EX_TWOCLICKACTIVATE - 双击项目时,控件发送 $LVN_ITEMACTIVATE 消息
$LVS_EX_UNDERLINECOLD - 使被激活的下划线文本为非热项
$LVS_EX_UNDERLINEHOT - 使被激活的下划线文本为热项
$iExMask [可选参数] 指定 $iExStyle 中哪些样式受此设置的影响.此参数可以是扩展样式的组合
只有在这里设置的扩展样式将被改变,所有其他样式将维持不变
如果此参数为 0, $iExStyle 设置的全部样式都将受到影响.

返回值

返回以前的扩展样式

注意/说明

None.

相关

_GUICtrlListView_GetExtendedListViewStyle

示例/演示


#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <GuiImageList.au3>

$Debug_LV = False ; 检查传递给 ListView 函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作

_Main()

Func _Main()
    Local $hImage, $hListView

    ; 创建 GUI
    GUICreate("ListView Set Extended Style", 400, 300)
    $hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
    _GUICtrlListView_SetExtendedListViewStyle($hListView, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES))
    GUISetState()

    ; 加载图像
    $hImage = _GUIImageList_Create()
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF0000, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x0000FF, 16, 16))
    _GUICtrlListView_SetImageList($hListView, $hImage, 1)

    ; 添加列
    _GUICtrlListView_InsertColumn($hListView, 0, "Column 1", 100)
    _GUICtrlListView_InsertColumn($hListView, 1, "Column 2", 100)
    _GUICtrlListView_InsertColumn($hListView, 2, "Column 3", 100)

    ; 添加项目
    _GUICtrlListView_AddItem($hListView, "Row 1: Col 1", 0)
    _GUICtrlListView_AddSubItem($hListView, 0, "Row 1: Col 2", 1, 1)
    _GUICtrlListView_AddSubItem($hListView, 0, "Row 1: Col 3", 2, 2)
    _GUICtrlListView_AddItem($hListView, "Row 2: Col 1", 1)
    _GUICtrlListView_AddSubItem($hListView, 1, "Row 2: Col 2", 1, 2)
    _GUICtrlListView_AddItem($hListView, "Row 3: Col 1", 2)

    ; 循环直到用户退出
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main