📄 unit4.~pas
字号:
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids;
type
Tpass2frm = class(TForm)
Table1: TTable;
Table2: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Button1: TButton;
Edit3: TEdit;
ComboBox1: TComboBox;
Button2: TButton;
Button3: TButton;
Table3: TTable;
Label4: TLabel;
Table4: TTable;
GroupBox2: TGroupBox;
Label5: TLabel;
Edit4: TEdit;
Label6: TLabel;
Edit5: TEdit;
Label7: TLabel;
Edit6: TEdit;
Button4: TButton;
Button5: TButton;
Memo1: TMemo;
Table5: TTable;
Table6: TTable;
Label8: TLabel;
Label9: TLabel;
procedure Button1Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
pass2frm: Tpass2frm;
//str:string;
implementation
{$R *.dfm}
procedure idshow();
var
str,str1,str2,str3,str5,str6,str7,str8:string;
begin
with pass2frm do
begin
Table4.open;
Table4.IndexFieldNames:='学号';
memo1.Clear;
//showmessage('i have been to here');
if Table4.findkey([edit1.text]) then memo1.Text:='借书情况'
else memo1.Text:='没有借书';
memo1.Text:=memo1.Text+#13#10;
str:=table4.FieldByName('学号').AsString;
while not table4.eof do
begin
memo1.Text:=memo1.Text+table4.fieldbyname('ISBN').AsString+' ';
memo1.Text:=memo1.Text+table4.fieldbyname('书名').asstring+' ';
memo1.Text:=memo1.Text+table4.fieldbyname('出版社').asstring+' ';
memo1.Text:=memo1.Text+table4.fieldbyname('借书时间').asstring+' ';
memo1.Text:=memo1.Text+#13#10;
table4.Next;
if table4.FieldByName('学号').AsString=edit1.Text then break;
end;
Table3.IndexFieldNames:='学号';
//memo1.Clear;
//showmessage('i have been to here');
if Table3.findkey([edit1.text]) then memo1.Text:=memo1.text+'预约书情况'
else memo1.Text:=memo1.text+'没有预约书';
memo1.Text:=memo1.Text+#13#10;
str:=table3.FieldByName('学号').AsString;
while not table3.eof do
begin
memo1.Text:=memo1.Text+table3.fieldbyname('ISBN').AsString+' ';
memo1.Text:=memo1.Text+table3.fieldbyname('书名').asstring+' ';
memo1.Text:=memo1.Text+table3.fieldbyname('出版社').asstring+' ';
//memo1.Text:=memo1.Text+table3.fieldbyname('借书时间').asstring+' ';
memo1.Text:=memo1.Text+#13#10;
table3.Next;
if table3.FieldByName('学号').AsString=edit1.Text then break;
end;
end;
end;
procedure Tpass2frm.Button1Click(Sender: TObject);
var
str :string;
begin
button3.Enabled:=false;
button4.Enabled:=false;
button5.Enabled:=false;
table1.open;
table1.IndexFieldNames:='学号';
if table1.FindKey([edit1.Text]) then
begin
if table1.FieldByName('密码').AsString=edit2.Text then
begin
str:=table1.FieldByName('姓名').AsString;
label4.Caption:=str+'欢迎你来到图书馆';
button3.Enabled:=true;
button4.Enabled:=true;
button5.Enabled:=true;
idshow();
end
else
begin
showmessage('密码错误');
edit2.Text:='';
end;
end
else showmessage('密码错误');
end;
procedure Tpass2frm.ComboBox1Change(Sender: TObject);
begin
table2.IndexFieldNames:=combobox1.Text;
if not table2.FindKey([edit3.Text]) then showmessage('没有这个记录!')
end;
procedure Tpass2frm.Button3Click(Sender: TObject);
var
str1,str2,str3,str4,str5,str6,str7,str8,str:string;
num:integer;
begin
table1.IndexfieldNames:='学号';
table1.FindKey([edit1.Text]);
str7:=table1.fieldbyname('姓名').AsString;
str1:=table2.fieldbyname('ISBN').AsString;
str2:=table2.fieldbyname('书名').AsString;
str3:=table2.fieldbyname('出版社').AsString;
str4:=table2.fieldbyname('出版日期').AsString;
str6:=table2.fieldbyname('作者').AsString;
str5:=table2.fieldbyname('类别').AsString;
str8:=edit1.Text;
table5.Open;
table5.IndexFieldNames:='ISBN';
if table5.FindKey([str1]) then begin
num:=strtoint(table5.fieldbyname('可借数量').asstring);
if num=0 then begin
showmessage('已借完');
abort;
end;
num:=num-1;
table5.Edit;
table5.fieldbyname('可借数量').asstring:=inttostr(num);
table5.Append;
end;
table3.Open;
table3.IndexFieldNames:=combobox1.Text;
if table3.FindKey([edit3.text]) then begin
showmessage('你已经订了该书');
edit3.Text:='';
abort;
end;
table3.Insertrecord([str1,str8,str7,str2,str3,str4,str5]);
showmessage('预约完毕');
end;
procedure Tpass2frm.Button2Click(Sender: TObject);
begin
if messagedlg('确定要注销吗?',mtinformation,[mbyes,mbno],0)=mryes then
begin
memo1.Clear;
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
pass2frm.Visible:=false;
table1.Close;
label4.Caption:='';
end;
end;
procedure Tpass2frm.Button4Click(Sender: TObject);
begin
if (edit5.text='') or(edit6.text='') then
begin
showmessage('密码不能为空');
abort;
end;
table6.Open;
table6.IndexFieldNames:='学号';
if(edit5.text<>edit6.text) then
begin
showmessage('请再确认一下你的密码');
abort;
end;
table6.FindKey([edit1.Text]);
if (table6.FieldByName('密码').asstring<>edit4.Text) then showmessage('密码错误,请重新输入')
else
begin
table6.Edit;
table6.FieldByName('密码').AsString:=edit6.Text;
table6.append;
showmessage('修改成功');
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
table6.Close;
end;
end;
procedure Tpass2frm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if messagedlg('确定要退出吗?',mtinformation,[mbyes,mbno],0)=mryes then
begin
memo1.Clear;
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
pass2frm.Visible:=false;
table1.Close;
label4.Caption:='';
table2.Close;
table4.Close;
table3.Close;
table5.Close;
table6.Close;
end;
end;
procedure Tpass2frm.FormActivate(Sender: TObject);
begin
table2.open;
table5.open;
table3.Open;
table4.open;
table6.Open;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -