📄 showbook_form.~pas
字号:
unit ShowBook_Form;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, TFlatButtonUnit, ComCtrls, ExtCtrls,DB,DBTables;
type
TShowBook_F = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
HSXX_LV: TListView;
QD_FBtn: TFlatButton;
QX_FBtn: TFlatButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure QX_FBtnClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure HSXX_LVDblClick(Sender: TObject);
procedure QD_FBtnClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ShowBook_F: TShowBook_F;
implementation
uses
JSHS_Form, Common_Unit,IniFiles;
{$R *.dfm}
procedure TShowBook_F.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
//***********************************************************************************
procedure TShowBook_F.FormDestroy(Sender: TObject);
begin
ShowBook_F:=nil;
end;
//***********************************************************************************
procedure TShowBook_F.QX_FBtnClick(Sender: TObject);
begin
close;
end;
procedure TShowBook_F.FormCreate(Sender: TObject);
var
HSXX_Q:TQuery;
Book:TListItem;
begin
HSXX_Q:=TQuery.Create(nil);
HSXX_Q.DatabaseName:=DataPath;
HSXX_Q.SQL.Add('Select A.TSBH,HDate,Name,Num From JYXXB A,TSJBXX B ');
HSXX_Q.SQL.Add('Where A.UserID=:UserID and A.TSBH=B.TSBH');
HSXX_Q.ParamByName('UserID').AsString:=TJSHS_F(Share_JSHS).TSBH_FE.Text; //BH;//JSHS_F.TSBH_FE.Text;后面的不能用
HSXX_Q.Open;
if not(HSXX_Q.Bof and HSXX_Q.Eof) then
while not HSXX_Q.Eof do
begin
if HSXX_Q.FieldByName('HDate').IsNull then //显示没有还的书的信息
begin
Book:=HSXX_LV.Items.Add;
Book.Caption:=HSXX_Q.FieldValues['TSBH'];
Book.SubItems.Add(HSXX_Q.FieldValues['Name']);
Book.SubItems.Add(HSXX_Q.FieldValues['Num']);
end;
HSXX_Q.Next;
end;
FreeAndNil(HSXX_Q);
end;
//***********************************************************************************
procedure TShowBook_F.HSXX_LVDblClick(Sender: TObject);
var
HSXX_Q:TQuery;
SH:String;
TS:Integer;
MyIniFile:TiniFile;
FJ,FJDay:Double;
begin
SH:=HSXX_LV.Selected.Caption;
TJSHS_F(Share_JSHS).HSSL_FE.Text:=HSXX_LV.Selected.SubItems[1];
HSXX_Q:=TQuery.Create(nil); //查询此图书的基本信息
HSXX_Q.DatabaseName:=DataPath;
HSXX_Q.SQL.Add('Select * From TSJBXX A Where A.TSBH=:TSBH');
HSXX_Q.ParamByName('TSBH').AsString:=SH;
HSXX_Q.Open;
TJSHS_F(Share_JSHS).HSBH_FE.Text:=SH;
TJSHS_F(Share_JSHS).HSSM_FE.Text:=HSXX_Q.FieldValues['Name'];
TJSHS_F(Share_JSHS).HSZZ_FE.Text:=HSXX_Q.FieldValues['Auther'];
TJSHS_F(Share_JSHS).HSCBS_FE.Text:=HSXX_Q.FieldValues['CBS'];
TJSHS_F(Share_JSHS).HSDJ_FE.Text:=HSXX_Q.FieldValues['Cost'];
HSXX_Q.Close; //读取借书者的姓名和到期的时间
HSXX_Q.SQL.Clear;
HSXX_Q.SQL.Add('Select A.Name,B.LastDate From YH A,JYXXB B Where A.UserID=:UserID and HDate is Null');
HSXX_Q.SQL.Add(' and A.UserID=B.UserID');
HSXX_Q.ParamByName('UserID').AsString:=TJSHS_F(Share_JSHS).TSBH_FE.Text; //用户ID号
HSXX_Q.Open;
TJSHS_F(Share_JSHS).HSXM_FE.Text:=HSXX_Q.FieldValues['Name'];
TS:=Date-HSXX_Q.FieldValues['LastDate'];
if TS<0 then TS:=0; //天数为负,表示按时归还
TJSHS_F(Share_JSHS).HSCGTS_FE.Text:=IntToStr(TS);
if TS>0 then //计算罚金
begin
MyIniFile:=TiniFile.Create(Application.ExeName+'set.ini');
FJDay:=MyIniFile.ReadFloat('set','FJDay',0.5);
FreeAndNil(MyIniFile);
end;
FJ:=FJDay*TS*(StrToInt(HSXX_LV.Selected.SubItems[1]));
TJSHS_F(Share_JSHS).HSFJ_FE.Text:=FloatToStr(FJ);
FreeAndNil(HSXX_Q);
close;
end;
//***********************************************************************************
procedure TShowBook_F.QD_FBtnClick(Sender: TObject);
begin
HSXX_LVDblClick(HSXX_LV);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -