效果图:
// 显示TreeView.ShowCheckBoxes := True;
// 创建节点时给Node.OnApplyStyleLookup事件赋值
function TFrmMain.NewNode(ParentNode: TFmxObject; Text: string; ImgIdx: Integer): TTreeViewItem;
begin
Result := TTreeViewItem.Create(Self);
Result.Parent := ParentNode;
Result.Text := Text;
Result.ImageIndex := ImgIdx;
Result.DisableDisappear := True;
end;
procedure TFrmMain.OnItemApplyStyle(Sender: TObject);
var
Item: TTreeViewItem;
begin
if Sender is TTreeViewItem then
begin
Item := Sender as TTreeViewItem;
// 条件可以是Tag、TagString、Level等
if Item.TagString = 'FIELD' then
item.StylesData['check.Visible'] := False;// 样式表的中check不显示
end;
end;
// 示例代码:表节点显示CheckBox,字段节点不显示CheckBox
var
pitem, item: TTreeViewItem;
begin
pitem := FrmMain.NewNode(nil, 'Table', -1);
pitem.TagString := 'TABLE';
pitem.OnApplyStyleLookup := FrmMain.OnItemApplyStyle;
item := FrmMain.NewNode(pitem, 'Field Name');
item.TagString := 'FIELD';
item.OnApplyStyleLookup := FrmMain.OnItemApplyStyle;
end;