⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dataselectform.pas

📁 DbAnyWhere开发套件
💻 PAS
字号:
unit DataSelectForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ExtCtrls, DBGrids, Grids, DBGridEh,
  RemoteDbTreeView, ComCtrls, LocalDbTreeView, DB, ImgList, GridTitle,
  adodb,DBClient, remotedataset, RemoteUdpConnection;

type
  TDataSelectForm_Form = class(TForm)
    btpanel: TPanel;
    leftPanel: TPanel;
    rightpanel: TPanel;
    lv: TLocalDbTreeView;
    rv: TRemoteDbTreeView;
    grideh: TDBGridEh;
    grid: TDBGrid;
    DataSource1: TDataSource;
    ml: TImageList;
    gt: TGridTitle;
    Panel1: TPanel;
    BitBtn3: TBitBtn;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Panel2: TPanel;
    Label1: TLabel;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    Label2: TLabel;
    Edit1: TEdit;
    SpeedButton1: TSpeedButton;
    Image1: TImage;
    ComboBox3: TComboBox;
    procedure BitBtn2Click(Sender: TObject);
    procedure lvChange(Sender: TObject; Node: TTreeNode);
    procedure rvChange(Sender: TObject; Node: TTreeNode);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure lvDblClick(Sender: TObject);
    procedure gridehDblClick(Sender: TObject);
    procedure gridDblClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private

    { Private declarations }
  public
    FShowSelectDb:boolean;
    tempsql:string;
    Adoqq:TAdoQuery;
    rtqq:Tremotedataset;
    resultok:boolean;
    { Public declarations }
  end;

var
  DataSelectForm_Form: TDataSelectForm_Form;

implementation

{$R *.dfm}

procedure TDataSelectForm_Form.BitBtn2Click(Sender: TObject);
begin
  resultok:=false;
  close;
end;

procedure TDataSelectForm_Form.lvChange(Sender: TObject; Node: TTreeNode);
begin
  if self.FShowSelectDb then self.lv.ShowSelectDb;
end;

procedure TDataSelectForm_Form.rvChange(Sender: TObject; Node: TTreeNode);
begin
  if self.FShowSelectDb then self.rv.ShowSelectDb;
end;

procedure TDataSelectForm_Form.FormCreate(Sender: TObject);
begin
  FShowSelectDb:=false;
  tempsql:='';
  resultok:=false;
end;

procedure TDataSelectForm_Form.FormShow(Sender: TObject);
begin
  resultok:=false;
  if grid.Visible then gt.SetGridTitle(self,grid);
  if grideh.Visible then gt.SetGridTitle(self,grideh);
  if not rightpanel.Visible then bitbtn3.Visible:=false
  else bitbtn3.Visible:=true;
  if leftpanel.Visible then
  begin
    if lv.Visible then lv.SetFocus;
    if rv.Visible then rv.SetFocus;
  end;
  if not leftpanel.Visible then
  begin
    panel2.Visible :=false;
  end;
  edit1.Text:='';
  //edit1.SetFocus;
end;

procedure TDataSelectForm_Form.BitBtn3Click(Sender: TObject);
begin
  if grid.Visible then gt.DesignGridTitle(self,grid);
  if grideh.Visible then gt.DesignGridTitle(self,grideh);
end;

procedure TDataSelectForm_Form.lvDblClick(Sender: TObject);
begin
  if not rightpanel.Visible then bitbtn1.Click; 
end;

procedure TDataSelectForm_Form.gridehDblClick(Sender: TObject);
begin
  bitbtn1.Click;
end;

procedure TDataSelectForm_Form.gridDblClick(Sender: TObject);
begin
  bitbtn1.Click;
end;

procedure TDataSelectForm_Form.FormActivate(Sender: TObject);
begin
  if grid.Visible then gt.SetGridTitle(self,grid);
end;

procedure TDataSelectForm_Form.SpeedButton1Click(Sender: TObject);
begin
  //判断有效
  if combobox1.ItemIndex=-1 then exit;
  if self.Adoqq=nil then
  begin
    self.rtqq.Remoteclose;
    self.rtqq.RTSQL.Text:=self.tempsql+' and '+combobox3.Text+' '+
    combobox2.Text+' '''+edit1.Text+'''';
    if combobox2.Text='like' then
    self.rtqq.RTSQL.Text:=self.tempsql+' and '+combobox3.Text+' '+
    combobox2.Text+' ''%'+edit1.Text+'%''';
    if length(trim(edit1.Text))=0 then self.rtqq.RTSQL.Text:=self.tempsql;
    self.rtqq.RemoteOpen;
  end else
  begin
    self.Adoqq.Close;
    self.Adoqq.SQL.Text:=self.tempsql+' and '+combobox3.Text+' '+
    combobox2.Text+' '''+edit1.Text+'''';
    if combobox2.Text='like' then
    self.Adoqq.SQL.Text:=self.tempsql+' and '+combobox3.Text+' '+
    combobox2.Text+' ''%'+edit1.Text+'%''';
    if length(trim(edit1.Text))=0 then self.Adoqq.SQL.Text:=self.tempsql;
    self.Adoqq.Open;
  end;
end;

procedure TDataSelectForm_Form.ComboBox1Change(Sender: TObject);
begin
  //同步
  combobox3.ItemIndex:=combobox1.ItemIndex;
end;

procedure TDataSelectForm_Form.BitBtn1Click(Sender: TObject);
begin
  resultok:=true;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -