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

📄 selecttype.pas

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

interface

uses
  SysUtils, Classes, windows,dialogs,ExtCtrls,forms,Graphics,
  StdCtrls,Controls,ComCtrls,DataSelect,Buttons;

type
  TFieldPanel = class(TPanel)
  private
    FLeftPanel:Tpanel;
    FRightPanel:Tpanel;
    procedure click1(sender:Tobject);
    procedure click2(sender:Tobject);
    { Private declarations }
  protected
    { Protected declarations }
    procedure change(sender:Tobject);
  public
    FSelectCheck:TCheckbox;
    FLuruEdit1:TEdit;
    FLuruEdit2:TEdit;
    Fbutton1:Tspeedbutton;
    Fbutton2:Tspeedbutton;
    FLuruDateTime1:TDateTimePicker;
    FLuruDateTime2:TDateTimePicker;
    FLuruCheck:TCheckBox;
    FCalComboBox:TCombobox;
    SelectTableName:string;
    FDS:TDataSelect;
    { Public declarations }
    destructor Destroy; override;
    constructor Create(AOwner: TComponent); override;
  published
    { Published declarations }
  end;
implementation
constructor TFieldPanel.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  //自己设置
  self.Width:=393;
  self.Height:=27;{50}
  //左右面板
  FLeftPanel:=Tpanel.Create(nil);
  FRightPanel:=Tpanel.Create(nil);
  FLeftPanel.Color:=clMedGray;
  FRightPanel.Color:=clSkyBlue;
  FLeftPanel.BevelOuter:=bvnone;
  FRightPanel.BevelOuter:=bvnone;
  FLeftpanel.Parent:=self;
  fLeftpanel.Align:=alleft;
  fLeftpanel.Width:=156;
  FRightpanel.Parent:=self;
  fRightpanel.Align:=alclient;
  //左面板上组件
  FSelectCheck:=Tcheckbox.Create(nil);
  fselectcheck.Parent:=fLeftpanel;
  fselectcheck.Left:=7;
  fselectcheck.Top:=4;
  FCalComboBox:=Tcombobox.Create(nil);
  FCalComboBox.Parent:=FleftPanel;
  FCalComboBox.Left:=87;
  FCalComboBox.Top:=2;
  FCalComboBox.Width:=67; 
  //右面板上组件
  //edit
  FLuruEdit1:=TEdit.Create(nil);
  fluruEdit1.Parent:=frightpanel;
  FluruEdit1.Width:=194;
  fluruEdit1.Left:=3;
  fluruEdit1.Top:=2;
  FluruEdit1.Visible:=false;
  FLuruEdit2:=TEdit.Create(nil);
  fluruEdit2.Parent:=frightpanel;
  FluruEdit2.Width:=194;
  fluruEdit2.Left:=3;
  fluruEdit2.Top:=25;
  FluruEdit2.Visible:=false;
  //选择按钮
  Fbutton1:=TSpeedbutton.Create(nil);
  Fbutton1.Parent:=frightpanel;
  Fbutton1.Width:=33;
  Fbutton1.Left:=199;
  Fbutton1.Top:=2;
  Fbutton1.Caption:='选择';
  Fbutton1.Visible:=false;
  Fbutton2:=TSpeedbutton.Create(nil);
  Fbutton2.Parent:=frightpanel;
  Fbutton2.Width:=33;
  Fbutton2.Left:=199;
  Fbutton2.Top:=25;
  Fbutton2.Caption:='选择';
  Fbutton2.Visible:=false;
  Fbutton1.Flat:=true;
  Fbutton2.Flat:=true;
  //datatime
  FLuruDateTime1:=TDateTimePicker.Create(nil);
  fluruDateTime1.Parent:=frightpanel;
  FluruDateTime1.Width:=230;
  fluruDateTime1.Left:=3;
  fluruDateTime1.Top:=2;
  FlurudateTime1.Visible:=false;
  FLuruDateTime2:=TDateTimePicker.Create(nil);
  fluruDateTime2.Parent:=frightpanel;
  FluruDateTime2.Width:=230;
  fluruDateTime2.Left:=3;
  fluruDateTime2.Top:=25;
  FlurudateTime2.Visible:=false;
  //check
  FLuruCheck:=TCheckBox.Create(nil);
  fluruCheck.Parent:=frightpanel;
  FluruCheck.Width:=194;
  fluruCheck.Left:=3;
  fluruCheck.Top:=4;
  FluruCheck.Visible:=false;
  //选择不同的计算方式
  FCalComboBox.OnChange:=change;
  //选择按钮
  SelectTableName:='';
  Fbutton1.OnClick:=click1;
  Fbutton2.OnClick:=click2;
  //FDS:=TDataSelect.Create(nil);
end;
destructor TFieldPanel.Destroy;
begin
  inherited Destroy;
  //freeandnil(fds);
end;
procedure TFieldPanel.change(sender:Tobject);
begin
  if self.FCalComboBox.Text='between' then
  begin
    if self.FLuruEdit1.Visible then
    begin
      self.FLuruEdit2.Visible:=true;
      self.FLuruDateTime2.Visible:=false;
      self.Height:=50;
    end;
    if self.FLuruDateTime1.Visible then
    begin
      self.FLuruDateTime2.Visible:=true;
      self.FLuruEdit2.Visible:=false;
      self.Height:=50;
    end;
  end else
  begin
    self.Height:=27;
  end;
end;
procedure TFieldPanel.click1(sender:Tobject);
begin
  fds.DataItems.SynDataBase(self.SelectTableName);
  fds.DataItems.GetFromTableName(self.SelectTableName).ShowModal;
  if fds.DataItems.GetFromTableName(self.SelectTableName).resultok then
  begin
  if length(trim(fds.DataItems.GetFromTableName(self.SelectTableName).NameField))=0 then
  self.FLuruEdit1.Text:=
  fds.DataItems.GetFromTableName(self.SelectTableName).CodeFieldValue else
  self.FLuruEdit1.Text:=
  fds.DataItems.GetFromTableName(self.SelectTableName).NameFieldvalue;
  end;
  self.FLuruEdit1.SetFocus;
end;
procedure TFieldPanel.click2(sender:Tobject);
begin
  fds.DataItems.SynDataBase(self.SelectTableName);
  fds.DataItems.GetFromTableName(self.SelectTableName).ShowModal;
  if fds.DataItems.GetFromTableName(self.SelectTableName).resultok then
  begin
  if length(trim(fds.DataItems.GetFromTableName(self.SelectTableName).NameField))=0 then
  self.FLuruEdit2.Text:=
  fds.DataItems.GetFromTableName(self.SelectTableName).CodeFieldValue else
  self.FLuruEdit2.Text:=
  fds.DataItems.GetFromTableName(self.SelectTableName).NameFieldvalue;
  end;
  self.FLuruEdit2.SetFocus;
end;
end.

⌨️ 快捷键说明

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