TreeView怎么查出当前节点的所有子节点

TreeView如何查出当前节点的所有子节点
TreeView树结构的层数不固定,对应表ID(节点),PID(父节点),PName(名称)
现在点击TreeView其中一个节点,想找出其下所有子节点的ID,如何编写,麻烦给出代码
------解决思路----------------------
遍历全部子节点代码:
procedure TShowTextFrm.Button1Click(Sender: TObject);
var NowNode,Node : TTreeNode;
    iLevel:integer;
begin
  NowNode:=TreeView1.Selected;
  if NowNode.HasChildren then
  begin
    Node:=NowNode.getFirstChild;
    iLevel:=Node.Level;
    ShowMessage(Node.Text);
    While (Node.GetNext<>nil) and
          (Node.GetNext.Level>=iLevel) do
    begin
      Node:=Node.GetNext;
      ShowMessage(Node.Text);
    end;
  end;
end;