参考上面连接的例子试试就可以了。你看我 做的一个简单测试:
1、做一个功能,然后把下面部分拷贝,直接粘贴到主窗体 界面上即可
object BizTreeView1: TBizTreeView
Left = 8
Top = 8
Width = 272
Height = 360
AutoLoad = False
Indent = 19
TabOrder = 0
TabStop = True
DisplayType = dtDisplayName
BizOperates = []
end
object Button1: TButton
Left = 296
Top = 336
Width = 75
Height = 25
Caption = #36733#20837#26641
TabOrder = 1
OnClick = Button1Click
end
object ListBox1: TListBox
Left = 296
Top = 16
Width = 288
Height = 272
ItemHeight = 12
TabOrder = 2
end
object Button2: TButton
Left = 384
Top = 336
Width = 75
Height = 25
Caption = #36873#25321
TabOrder = 3
OnClick = Button2Click
end
2、代码部分
unit MainForm;
interface
uses
Business.System, Business.Forms, Business.Model;
type
TMainForm = class(TForm)
BizTreeView1: TBizTreeView;
Button1: TButton;
ListBox1: TListBox;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure BizFormCreate(Sender: TObject);
procedure BizFormDestroy(Sender: TObject);
private
{private declarations}
FNodes: TStrings;
public
{public declarations}
end;
implementation
procedure TMainForm.Button1Click(Sender: TObject);
begin
BizTreeView1.ShowOptions := [TBizObjectKind.boOrgServer, TBizObjectKind.boOrgRoot,
//TBizObjectKind.boPositionRoot,
//TBizObjectKind.boPersonRoot,
TBizObjectKind.boOrgan,
TBizObjectKind.boDept,
TBizObjectKind.boPositionMember,
TBizObjectKind.boPersonMember];
BizTreeView1.ReloadTree;
end;
procedure TMainForm.Button2Click(Sender: TObject);
var
lBizNode : TBizNode;
lNode : TBaseNode;
i : Integer;
begin
lBizNode := BizTreeView1.SelectedNode;
if lBizNode <> nil then
begin
//FNodes.AddObject(lBizNode.BizURL.URL, lBizNode);
BizTree.BizTreeStructure.GetChildrenByKindsString(lBizNode.GUID,FNodes,True,'.psm');
Dialogs.ShowMessage(lBizNode.ObjectKind);
for i := 0 to FNodes.Count - 1 do
begin
//ListBox1.Items.Add(FNodes);
lNode := BizTree.BizTreeStructure.FindNode(FNodes);
if lNode <> nil then
ListBox1.Items.Add(lNode.DisplayName);
end;
end;
end;
procedure TMainForm.BizFormCreate(Sender: TObject);
begin
FNodes := TStringList.Create;
end;
procedure TMainForm.BizFormDestroy(Sender: TObject);
begin
FreeAndNil(FNodes);
end;
end. |