TreeList在显示时不能显示复选框,可经过如下方法实现:code
定义一个全局常量。
事件
const TVIS_CHECKED = $2000; //节点是否被选中
在窗体的onCreate事件中添加如下代码:io
SetWindowLong(tvSetList.Handle, GWL_STYLE, GetWindowLong(tvSetList.Handle, GWL_STYLE) or $00000100);
判断是否被选中:function
function IsChecked(Node: TTreeNode): Boolean; //节点是否被选中 var TvItem: TTVItem; begin TvItem.Mask := TVIF_STATE; TvItem.hItem := Node.ItemId; TreeView_GetItem(Node.TreeView.Handle, TvItem); Result := (TvItem.State and TVIS_CHECKED) = TVIS_CHECKED; end;