Показать сообщение отдельно
  #4  
Старый 22.03.2013, 17:08
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

Ну, что всё разжёвывать ?

Код:
private
   procedure AddChildrens(Node:TTreeNode; ChildrenNames:TStrings; ImageIndex:Integer); 

Код:
procedure TForm1.dxBarButton1Click(Sender: TObject);
var DBNames : TStringList;  
begin
  DBNames := TStringList.Create; 
  MyConnection1.GetDatabaseNames(DBNames); 
  AddChildrens (nil,DBNames,0); 
  DBNames.Free; 
end;

procedure TForm1.cxTreeView1Expanding(Sender: TObject; Node: TTreeNode;   var AllowExpansion: Boolean); 
var 
  Names : TStringList;  
begin
  Names := TStringList.Create;
  try
    if Node.Level = 1 then 
    begin
      MyConnection1.Database := Node.Text; 
      MyConnection1.Connect; 
      MyConnection1.GetTableNames(TblNames); 
    end else
    if Node.Level = 2 then 
    begin
      // тут добавить код получения имён полей 
     // таблицы Node.Text в список Names
    end
     else Exit;
    AddChildrens (Node,Names,Node.Level); 
  finally
    Names.Free
  end;
end;
Ответить с цитированием