📄 cx_form.pas
字号:
unit CX_Form;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, TFlatGroupBoxUnit, TFlatCheckBoxUnit,
TFlatRadioButtonUnit, TFlatButtonUnit, TFlatComboBoxUnit, Grids, DBGrids,
DB,DBTables, TFlatEditUnit;
type
TCX_F = class(TForm)
XS_PC: TPageControl;
TSXX_TS: TTabSheet;
YHXX_TS: TTabSheet;
JYQK_TS: TTabSheet;
Close_Btn: TButton;
FlatGroupBox1: TFlatGroupBox;
ASH_FRBtn: TFlatRadioButton;
ASM_FRBtn: TFlatRadioButton;
AZZ_FRBtn: TFlatRadioButton;
ACBS_FRBtn: TFlatRadioButton;
ALB_FRBtn: TFlatRadioButton;
MHCX_FCB: TFlatCheckBox;
FlatGroupBox2: TFlatGroupBox;
Label1: TLabel;
KSCX_FBtn: TFlatButton;
GJZ_CB: TComboBox;
FlatGroupBox3: TFlatGroupBox;
TSJG_DG: TDBGrid;
TSJG_DS: TDataSource;
TS_Lable: TLabel;
FlatGroupBox4: TFlatGroupBox;
AJSZH_FRBtn: TFlatRadioButton;
AXM_FRBtn: TFlatRadioButton;
YHMHCX_FCB: TFlatCheckBox;
FlatGroupBox5: TFlatGroupBox;
Label2: TLabel;
YHKSCX_FBtn: TFlatButton;
YHGJZ_CB: TComboBox;
FlatGroupBox6: TFlatGroupBox;
YH_DG: TDBGrid;
YH_Lable: TLabel;
YH_DS: TDataSource;
FlatGroupBox7: TFlatGroupBox;
JYJSZ_FRBtn: TFlatRadioButton;
JYXM_FRBtn: TFlatRadioButton;
JYMHCX_FCB: TFlatCheckBox;
FlatGroupBox8: TFlatGroupBox;
Label3: TLabel;
JYKS_FBtn: TFlatButton;
FlatGroupBox9: TFlatGroupBox;
JY_DG: TDBGrid;
JY_Lable: TLabel;
JYYDQ_FRBtn: TFlatRadioButton;
JYGJZ_FE: TFlatEdit;
JY_DS: TDataSource;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Close_BtnClick(Sender: TObject);
procedure ASH_FRBtnClick(Sender: TObject);
procedure ALB_FRBtnClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure KSCX_FBtnClick(Sender: TObject);
procedure MHCX_FCBClick(Sender: TObject);
procedure AJSZH_FRBtnClick(Sender: TObject);
procedure YHKSCX_FBtnClick(Sender: TObject);
procedure YHMHCX_FCBClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure JYKS_FBtnClick(Sender: TObject);
procedure JYYDQ_FRBtnClick(Sender: TObject);
procedure JYJSZ_FRBtnClick(Sender: TObject);
procedure JYXM_FRBtnClick(Sender: TObject);
procedure AXM_FRBtnClick(Sender: TObject);
procedure ASM_FRBtnClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
CX_F: TCX_F;
implementation
uses Common_Unit;
{$R *.dfm}
var
TSXX_Q,YHXX_Q,JYXX_Q:TQuery;
procedure TCX_F.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
//***********************************************************************************
procedure TCX_F.FormDestroy(Sender: TObject);
begin
TSXX_Q.Close;
FreeAndNil(TSXX_Q);
YHXX_Q.Close;
FreeAndNil(YHXX_Q);
JYXX_Q.Close;
FreeAndNil(JYXX_Q);
CX_F:=nil;
end;
//***********************************************************************************
procedure TCX_F.Close_BtnClick(Sender: TObject);
begin
close;
end;
//***********************************************************************************
procedure TCX_F.ASH_FRBtnClick(Sender: TObject); //按书号
begin
GJZ_CB.Text:='';
GJZ_CB.MaxLength:=13;
TSXX_Q.Close;
TS_Lable.Caption:='共有 0 条记录';
GJZ_CB.Style:=csSimple;
end;
//***********************************************************************************
procedure TCX_F.ASM_FRBtnClick(Sender: TObject); //按书名,作者,出版社
begin
GJZ_CB.Text:='';
GJZ_CB.MaxLength:=0;
TSXX_Q.Close;
TS_Lable.Caption:='共有 0 条记录';
GJZ_CB.Style:=csSimple;
end;
//***********************************************************************************
procedure TCX_F.ALB_FRBtnClick(Sender: TObject); //按类别
var
TSLB_T:TTable;
begin
GJZ_CB.Text:='';
TSXX_Q.Close;
TS_Lable.Caption:='共有 0 条记录';
GJZ_CB.Style:=csDropDownList;
TSLB_T:=TTable.Create(nil);
TSLB_T.DatabaseName:=DataPath;
TSLB_T.TableName:='TSLB.DB';
TSLB_T.Open;
GJZ_CB.Items.Clear;
while not TSLB_T.Eof do
begin
GJZ_CB.Items.Add(TSLB_T.FieldValues['ClassName']);
TSLB_T.Next;
end;
GJZ_CB.ItemIndex:=0;
FreeAndNil(TSLB_T);
end;
//***********************************************************************************
procedure TCX_F.FormCreate(Sender: TObject);
begin
TSXX_Q:=TQuery.Create(nil);
TSXX_Q.DatabaseName:=DataPath;
YHXX_Q:=TQuery.Create(nil);
YHXX_Q.DatabaseName:=DataPath;
JYXX_Q:=TQuery.Create(nil);
JYXX_Q.DatabaseName:=DataPath;
end;
//***********************************************************************************
procedure TCX_F.KSCX_FBtnClick(Sender: TObject); //开始查询
begin
if ASH_FRBtn.Checked then //按书号
if MHCX_FCB.Checked then
begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost From');
TSXX_Q.SQL.Add(' TSJBXX A,TSLB B Where (A.TSBH Like :TSBH) and A.Class=B.ClassID');
TSXX_Q.ParamByName('TSBH').AsString:='%'+GJZ_CB.Text+'%';
TSJG_DS.DataSet:=TSXX_Q; //注意这是第二种数据库动态连接
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end
else begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost');
TSXX_Q.SQL.Add(' From TSJBXX A,TSLB B Where (A.TSBH=:TSBH) and A.Class=B.ClassID');
TSXX_Q.ParamByName('TSBH').AsString:=GJZ_CB.Text;
TSJG_DS.DataSet:=TSXX_Q;
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end;
if ASM_FRBtn.Checked then //按书名
if MHCX_FCB.Checked then
begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost From');
TSXX_Q.SQL.Add(' TSJBXX A,TSLB B Where (A.Name Like :Name) and A.Class=B.ClassID');
TSXX_Q.ParamByName('Name').AsString:='%'+GJZ_CB.Text+'%';
TSJG_DS.DataSet:=TSXX_Q; //注意这是第二种数据库动态连接
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end
else begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost');
TSXX_Q.SQL.Add(' From TSJBXX A,TSLB B Where (A.Name=:Name) and A.Class=B.ClassID');
TSXX_Q.ParamByName('Name').AsString:=GJZ_CB.Text;
TSJG_DS.DataSet:=TSXX_Q;
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end;
if AZZ_FRBtn.Checked then //按作者
if MHCX_FCB.Checked then
begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost From');
TSXX_Q.SQL.Add(' TSJBXX A,TSLB B Where (A.Auther Like :Auther) and A.Class=B.ClassID');
TSXX_Q.ParamByName('Auther').AsString:='%'+GJZ_CB.Text+'%';
TSJG_DS.DataSet:=TSXX_Q; //注意这是第二种数据库动态连接
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end
else begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost');
TSXX_Q.SQL.Add(' From TSJBXX A,TSLB B Where (A.Auther=:Auther) and A.Class=B.ClassID');
TSXX_Q.ParamByName('Auther').AsString:=GJZ_CB.Text;
TSJG_DS.DataSet:=TSXX_Q;
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end;
if ACBS_FRBtn.Checked then //按出版社
if MHCX_FCB.Checked then
begin
TSXX_Q.Close;
TSXX_Q.SQL.Clear;
TSXX_Q.SQL.Add('Select TSBH,Name,Auther,ClassName,CBS,Cost From');
TSXX_Q.SQL.Add(' TSJBXX A,TSLB B Where (A.CBS Like :CBS) and A.Class=B.ClassID');
TSXX_Q.ParamByName('CBS').AsString:='%'+GJZ_CB.Text+'%';
TSJG_DS.DataSet:=TSXX_Q; //注意这是第二种数据库动态连接
TSJG_DG.Columns[0].FieldName:='TSBH';
TSJG_DG.Columns[1].FieldName:='Name';
TSJG_DG.Columns[2].FieldName:='Auther';
TSJG_DG.Columns[3].FieldName:='ClassName';
TSJG_DG.Columns[4].FieldName:='CBS';
TSJG_DG.Columns[5].FieldName:='Cost';
TSXX_Q.Open;
TS_Lable.Caption:=Format('共 %d 条记录',[TSXX_Q.RecordCount]);
end
else begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -