📄 mainform.pas
字号:
unit MainForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, ComCtrls, Buttons, ExtCtrls,dateutils,
Menus,LoginForm,DataModule,SetupForm,AboutForm, TeeShape, TeEngine, Series, TeeProcs, Chart;
function Clear_Chinese(Str:string):string;
type
TForm_main = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
DBGrid2: TDBGrid;
Group_BookiInfo: TGroupBox;
Lab_BName: TLabel;
Lab_BID: TLabel;
Lab_Bool: TLabel;
Lab_BStu: TLabel;
Lab_BType: TLabel;
Group_BookFind: TGroupBox;
Radio_BName: TRadioButton;
Radio_BID: TRadioButton;
Radio_BType: TRadioButton;
ED_Find: TEdit;
BitBtn1: TBitBtn;
Lab_BMoney: TLabel;
Lab_BDays: TLabel;
Lab_BStuID: TLabel;
Lab_BODay: TLabel;
Lab_BLendDate: TLabel;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
StatusBar1: TStatusBar;
MainMenu1: TMainMenu;
menu_setup: TMenuItem;
Timer1: TTimer;
Radio_LendBool: TRadioButton;
Radio_StuID: TRadioButton;
Radio_StuName: TRadioButton;
Radio_BDays: TRadioButton;
Radio_BMoney: TRadioButton;
Radio_LendDay: TRadioButton;
Radio_BODay: TRadioButton;
BitBtn2: TBitBtn;
PageControl3: TPageControl;
TabSheet7: TTabSheet;
TabSheet8: TTabSheet;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label20: TLabel;
ED_BName: TEdit;
ED_BID: TEdit;
Label4: TLabel;
Label10: TLabel;
ED_BPrice: TEdit;
ED_BPress: TEdit;
CB_BType: TComboBox;
Label21: TLabel;
ED_BDate: TEdit;
BTN_insert: TBitBtn;
Label1: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label11: TLabel;
Label12: TLabel;
Label18: TLabel;
Label19: TLabel;
Label22: TLabel;
Label23: TLabel;
Lab_BPress: TLabel;
Lab_BPrice: TLabel;
Label24: TLabel;
Lab_BWriter: TLabel;
Radio_BWriter: TRadioButton;
Lab_Find: TLabel;
Bit_ShowAll: TBitBtn;
Label25: TLabel;
ED_BWriter: TEdit;
Label26: TLabel;
Label27: TLabel;
Lab_StuClass: TLabel;
menu_about: TMenuItem;
Panel4: TPanel;
Panel5: TPanel;
DBGrid1: TDBGrid;
PageControl2: TPageControl;
TabSheet9: TTabSheet;
TabSheet10: TTabSheet;
GroupBox2: TGroupBox;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Lab_StuName: TLabel;
Lab_StuID: TLabel;
Lab_ClassInfo: TLabel;
Lab_Series: TLabel;
Lab_Grade: TLabel;
Lab_class: TLabel;
Label34: TLabel;
Label35: TLabel;
Label36: TLabel;
Label37: TLabel;
Label38: TLabel;
Lab_Sex: TLabel;
Lab_booknum: TLabel;
Lab_SType: TLabel;
Lab_Num: TLabel;
GroupBox3: TGroupBox;
Memo1: TMemo;
Panel6: TPanel;
GroupBox5: TGroupBox;
Label59: TLabel;
Label60: TLabel;
Label61: TLabel;
Label62: TLabel;
Label63: TLabel;
Lab_return_price: TLabel;
Lab_return_writer: TLabel;
Lab_return_Press: TLabel;
Lab_return_BType: TLabel;
ED_return_BID: TEdit;
Label68: TLabel;
Label69: TLabel;
Label70: TLabel;
Label71: TLabel;
Label72: TLabel;
ED_return_StuID: TEdit;
Lab_return_StuName: TLabel;
Lab_return_StuSex: TLabel;
Lab_return_classinfo: TLabel;
Lab_return_StuBook: TLabel;
Bit_return: TBitBtn;
Label46: TLabel;
Lab_return_BName: TLabel;
Bit_loss: TBitBtn;
Panel7: TPanel;
GroupBox4: TGroupBox;
Label41: TLabel;
Label42: TLabel;
Label43: TLabel;
Lab_lend_BType: TLabel;
Label45: TLabel;
Lab_lend_press: TLabel;
Label47: TLabel;
Lab_lend_writer: TLabel;
Label49: TLabel;
Lab_lend_price: TLabel;
Label51: TLabel;
Lab_lend_StuName: TLabel;
Label53: TLabel;
Lab_lend_Classinfo: TLabel;
Label55: TLabel;
Lab_lend_StuBook: TLabel;
Label57: TLabel;
Lab_lend_StuSex: TLabel;
Label44: TLabel;
Lab_lend_BName: TLabel;
ED_lend_BID: TEdit;
ED_lend_stuID: TEdit;
Bit_lend: TBitBtn;
BitBtn6: TBitBtn;
Chart1: TChart;
Series1: TPieSeries;
Chart2: TChart;
Series2: THorizBarSeries;
DBGrid3: TDBGrid;
DBGrid4: TDBGrid;
Timer2: TTimer;
GroupBox6: TGroupBox;
Label29: TLabel;
Lab_Insert_StuID: TLabel;
ED_stu_name: TEdit;
Label28: TLabel;
CB_Sex: TComboBox;
Label30: TLabel;
CB_Grade: TComboBox;
Label31: TLabel;
CB_SeriesType: TComboBox;
Label32: TLabel;
BTN_stu_insert: TBitBtn;
ED_Num: TEdit;
CB_Class: TComboBox;
CB_BranchType: TComboBox;
Label33: TLabel;
Label39: TLabel;
Label40: TLabel;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
ED_ED_Bname: TEdit;
ED_ED_BPress: TEdit;
ED_ED_BWriter: TEdit;
ED_ED_BPrice: TEdit;
BitBtn7: TBitBtn;
ED_ED_name: TEdit;
CB_ED_sex: TComboBox;
CB_ED_grade: TComboBox;
CB_ED_series: TComboBox;
CB_ED_branch: TComboBox;
CB_ED_class: TComboBox;
BitBtn5: TBitBtn;
ED_ED_num: TEdit;
procedure DBGrid2CellClick(Column: TColumn);
procedure BitBtn1Click(Sender: TObject);
procedure TabSheet2Show(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer1Timer(Sender: TObject);
procedure TabSheet1Show(Sender: TObject);
procedure ED_clear();
procedure Lab_FindSet(Sender: TObject);
Procedure DBGridLenght();
procedure DBGrid2DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
procedure BitBtn2Click(Sender: TObject);
procedure Bit_ShowAllClick(Sender: TObject);
procedure BTN_insertClick(Sender: TObject);
procedure Bit_lendClick(Sender: TObject);
procedure menu_setupClick(Sender: TObject);
procedure TabSheet8Show(Sender: TObject);
procedure CB_BTypeChange(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
Procedure DBGrid1Lenght();
procedure TabSheet10Show(Sender: TObject);
procedure CB_GradeChange(Sender: TObject);
procedure CB_SeriesTypeChange(Sender: TObject);
procedure CB_BranchTypeChange(Sender: TObject);
procedure ED_NumKeyPress(Sender: TObject; var Key: Char);
procedure ED_NumChange(Sender: TObject);
procedure CB_ClassChange(Sender: TObject);
procedure ED_lend_BIDKeyPress(Sender: TObject; var Key: Char);
procedure ED_lend_BIDChange(Sender: TObject);
procedure ED_return_BIDKeyPress(Sender: TObject; var Key: Char);
procedure ED_return_BIDChange(Sender: TObject);
procedure ED_lend_stuIDChange(Sender: TObject);
procedure ED_lend_stuIDKeyPress(Sender: TObject; var Key: Char);
procedure ED_return_StuIDKeyPress(Sender: TObject; var Key: Char);
procedure ED_return_StuIDChange(Sender: TObject);
procedure BTN_stu_insertClick(Sender: TObject);
procedure CB_SexChange(Sender: TObject);
procedure Bit_returnClick(Sender: TObject);
procedure Bit_lossClick(Sender: TObject);
procedure TabSheet3Show(Sender: TObject);
procedure chart_date();
procedure BitBtn6Click(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
procedure TabSheet4Show(Sender: TObject);
procedure TabSheet4Hide(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure ED_ED_BnameChange(Sender: TObject);
procedure ED_ED_BPressChange(Sender: TObject);
procedure ED_ED_BWriterChange(Sender: TObject);
procedure ED_ED_BPriceChange(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure CB_ED_gradeChange(Sender: TObject);
procedure CB_ED_seriesChange(Sender: TObject);
procedure CB_ED_branchChange(Sender: TObject);
procedure CB_ED_classChange(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure ED_ED_nameChange(Sender: TObject);
procedure CB_ED_sexChange(Sender: TObject);
procedure ED_ED_numChange(Sender: TObject);
procedure menu_aboutClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_main: TForm_main;
dd:String;
d_Now:TDateTime;
d_Book:TDateTime;
d_Days:Integer;
d_ODays:TDateTime;
BTypeNum:Integer;
str_Grade:string;
str_SType:string;
str_BRtype:string;
str_class:string;
str_Num:string;
int_Sex:Integer;
bool_return_bookid:Boolean;
bool_return_stuid:Boolean;
bool_lend_bookid:Boolean;
bool_lend_stuid:Boolean;
bool_bit:Boolean;
BTypeList:array [0..10] of string;
implementation
uses StrUtils;
{$R *.dfm}
procedure TForm_main.DBGrid2CellClick(Column: TColumn);
var days:Integer;
begin
ED_clear;
Lab_BName.Caption:=DM.ADOQuery1.FieldByName('BName').AsString;
Lab_BID.Caption:=DM.ADOQuery1.FieldByName('BID').AsString;
Lab_BType.Caption:=DM.ADOQuery1.FieldByName('BType').AsString;
Lab_BPress.Caption:=DM.ADOQuery1.FieldByName('BPress').AsString;
Lab_BPrice.Caption:=DM.ADOQuery1.FieldByName('BPrice').AsString;
Lab_BWriter.Caption:=DM.ADOQuery1.FieldByName('BWriter').AsString;
ED_ED_Bname.Text:=DM.ADOQuery1.FieldByName('BName').AsString;
ED_ED_BWriter.Text:=DM.ADOQuery1.FieldByName('BWriter').AsString;
ED_ED_BPress.Text:=DM.ADOQuery1.FieldByName('BPress').AsString;
ED_ED_BPrice.Text:=DM.ADOQuery1.FieldByName('BPrice').AsString;
Lab_Bool.Caption:=DM.ADOQuery1.FieldByName('BBool').AsString;
if DM.ADOQuery1.FieldByName('BBool').AsString='True' then
begin
Lab_Bool.Caption:='是';
Label8.Font.Color:=clGrayText;
Label9.Font.Color:=clGrayText;
Label11.Font.Color:=clGrayText;
Label12.Font.Color:=clGrayText;
Label18.Font.Color:=clGrayText;
Label19.Font.Color:=clGrayText;
//DBGrid2.Canvas.Brush.Color:=clBlue;
end
else
Lab_Bool.Caption:='否';
Label8.Font.Color:=clBlack;
Label9.Font.Color:=clBlack;
Label11.Font.Color:=clBlack;
Label12.Font.Color:=clBlack;
Label18.Font.Color:=clBlack;
Label19.Font.Color:=clBlack;
begin
end;
Lab_BStu.Caption:=DM.ADOQuery1.FieldByName('StuName').AsString;
Lab_BStuID.Caption:=DM.ADOQuery1.FieldByName('StuID').AsString;
Lab_BODay.Caption:=DM.ADOQuery1.FieldByName('BODay').AsString;
Lab_BLendDate.Caption:=DM.ADOQuery1.FieldByName('BLendDate').AsString;
Lab_StuClass.Caption:=DM.ADOQuery1.FieldByName('ClassInfo').AsString;
if DM.ADOQuery1.FieldByName('BDays').AsString<>'' then
begin
days:=strtoint(DM.ADOQuery1.FieldByName('BDays').AsString);
if days>0 then
begin
Lab_BDays.Caption:=inttostr(days)+'天';
Lab_BMoney.Caption:='';
Lab_BDays.Font.Color:=clBlue;
Lab_BMoney.Font.Color:=clBlue;
end
else
begin
Lab_BDays.Caption:=inttostr(days)+'天';
Lab_BMoney.Caption:=floattostr(days*0.1*-1)+'元';
Lab_BDays.Font.Color:=clRed;
Lab_BMoney.Font.Color:=clRed;
end;
end;
// DBGrid2.Columns[0].Color:=clBlue;
end;
procedure TForm_main.BitBtn1Click(Sender: TObject);
begin
DM.ADOQuery1.SQL.Clear;
with DM.ADOQuery1 do
begin
if Radio_BName.Checked=True then
DM.ADOQuery1.SQL.Add('select * from BookInfo where BName='+QuotedStr(ED_Find.Text));
if Radio_BID.Checked=True then
DM.ADOQuery1.SQL.Add('select * from BookInfo where BID='+QuotedStr(ED_Find.Text));
if Radio_BType.Checked=True then
DM.ADOQuery1.SQL.Add('select * from BookInfo where BType='+QuotedStr(ED_Find.Text));
if Radio_LendBool.Checked=True then
if ED_Find.Text='是' then
begin
DM.ADOQuery1.SQL.Add('select * from BookInfo where BBool='+QuotedStr('1'));
end
else
begin
DM.ADOQuery1.SQL.Add('select * from BookInfo where BBool='+QuotedStr('0'));
end;
if Radio_StuID.Checked=True then //学号
DM.ADOQuery1.SQL.Add('select * from BookInfo where StuID='+QuotedStr(ED_Find.Text));
if Radio_StuName.Checked=True then //姓名
DM.ADOQuery1.SQL.Add('select * from BookInfo where StuName='+QuotedStr(ED_Find.Text));
if Radio_BDays.Checked=True then //剩余天数
DM.ADOQuery1.SQL.Add('select * from BookInfo where BDays='+QuotedStr(Clear_Chinese(ED_Find.Text)));
if Radio_LendDay.Checked=True then //借出日期
DM.ADOQuery1.SQL.Add('select * from BookInfo where BLendDate='+QuotedStr(ED_Find.Text));
if Radio_BODay.Checked=True then //过期日期
DM.ADOQuery1.SQL.Add('select * from BookInfo where BODay='+QuotedStr(ED_Find.Text));
if Radio_BWriter.Checked=True then //作者
DM.ADOQuery1.SQL.Add('select * from BookInfo where BWriter='+QuotedStr(ED_Find.Text));
if Radio_BMoney.Checked=True then //赔偿
DM.ADOQuery1.SQL.Add('select * from BookInfo where Money='+QuotedStr(Clear_Chinese(ED_Find.Text)));
DM.ADOQuery1.Open;
ED_clear;
DBGridLenght;
end;
end;
procedure TForm_main.TabSheet2Show(Sender: TObject);
begin
DM.ADOQuery1.SQL.Clear;
DM.ADOQuery1.SQL.Add('select * from StuInfo');
DM.ADOQuery1.Open;
DBGrid1Lenght;
end;
procedure TForm_main.FormClose(Sender: TObject; var Action: TCloseAction);
begin
application.Terminate;
end;
procedure TForm_main.Timer1Timer(Sender: TObject);
begin
//statusbar1.Panels[0].Text:='当前操作员:'+unit2.UserName;
statusbar1.Panels[1].Text:=DateToStr(date)+' '+TimeToStr(now);
end;
procedure TForm_main.TabSheet1Show(Sender: TObject);
begin
DM.ADOQuery1.SQL.Clear;
DM.ADOQuery1.SQL.Add('select * from BookInfo order by BID,BType');
DM.ADOQuery1.Open;
DBGridLenght;
end;
procedure TForm_main.ED_clear();
begin
Lab_BName.Caption:='';
Lab_BID.Caption:='';
Lab_Bool.Caption:='';
Lab_BStu.Caption:='';
Lab_BType.Caption:='';
Lab_BMoney.Caption:='';
Lab_BDays.Caption:='';
Lab_BStuID.Caption:='';
Lab_BODay.Caption:='';
Lab_BLendDate.Caption:='';
Lab_BPrice.Caption:='';
Lab_BPress.Caption:='';
Lab_BWriter.Caption:='';
Lab_StuClass.Caption:='';
end;
procedure TForm_main.DBGrid2DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if DM.ADOQuery1.FieldByName('BBool').AsString='True' then
begin
if strtoint(DM.ADOQuery1.FieldByName('BDays').AsString)>0 then
begin
DBGrid2.Canvas.Brush.Color:=clMoneyGreen;
end
else
DBGrid2.Canvas.Brush.Color:=RGB(140,100,100);
end;
DBGrid2.Canvas.FillRect(Rect);
DbGrid2.Canvas.TextOut(Rect.Left,Rect.Top,Field.AsString);
end;
procedure TForm_main.Lab_FindSet(Sender: TObject);
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -