我想开左右两个窗口,左小右大,左边以树状显示一个数据库中所有的表,每当点击左窗口中的一个表名,右边窗口则显示表中所有内容,且允许象EXCEL那样方便的编辑?怎么实现??最好有代码??
多谢!!
多谢!!
解决方案 »
- 窗体创建问题,经典老难题?
- 请问Object Pascal 有没有与C语言这样相当结构声明?
- 一个已年过34的DELPHI程序员的BLOG
- 使用spcomm中遇到的问题,请帮忙!!!
- 有个小问题!!
- 『高分求教』如何改变MainMenu上的字体颜色?
- 在delphi7下用Rave实现报表功能-看看我的操作步骤有什么错。
- 怎么把下载的控件使用?
- 请问 E:EDATEABASEERROR ...........
- 如何用程序来实现IIS虚拟目录的增删改?
- 三个简单问题,关于table控件,messagebox,和打开vfp文件?
- 在用nmftp时用ftpdirectorylist.modifdate得到的文件时间格式不一样?
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, DBTables, ComCtrls, Grids, DBGrids;type
TForm1 = class(TForm)
Query1: TQuery;
DBGrid1: TDBGrid;
TreeView1: TTreeView;
DataSource1: TDataSource;
procedure FormShow(Sender: TObject);
procedure TreeView1DblClick(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
private
{ Private declarations }
procedure InitTree;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.InitTree;
var
strsDBName:Tstrings;
I:Integer;
begin
strsDBName := TStringList.Create;
try
strsDBName.Clear;
session.GetAliasNames(strsDBName);
TreeView1.Items.Clear;
for i := 0 to strsDBName.Count - 1 do
begin
TreeView1.Items.AddChild(nil,strsDBName[i]);
end;
finally
strsDBName.Free;
end;
end;procedure TForm1.FormShow(Sender: TObject);
begin
InitTree;
end;procedure TForm1.TreeView1DblClick(Sender: TObject);
var
strsTableName:TStrings;
strDBname:string;
TNodeTemp:TTreeNode;
I : integer;
begin
//展开树;
if TreeView1.Items.Count = 0 then exit; TNodeTemp := TreeView1.Selected;
strDBname := TreeView1.Selected.Text;
strsTableName := TStringList.Create;
try
strsTableName.Clear;
Session.GetTableNames(strDBname,'',true,true,strsTableName);
for i := 0 to strsTableName.Count - 1 do
TreeView1.Items.AddChild(TNodeTemp,strsTableName[i]);
TNodeTemp.Expand(true);
finally
strsTableName.Free;
end;
end;procedure TForm1.TreeView1Click(Sender: TObject);
begin
//得道数据
if TreeView1.Selected.Level = 1 then
begin
Query1.Close;
Query1.SQL.Clear;
Query1.DatabaseName := TreeView1.Selected.Parent.Text;
Query1.SQL.Add('select * from ' + TreeView1.Selected.Text);
Query1.Open;
end;
end;end.