📄 selecttype.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 + -