⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit4.~pas

📁 图书馆管理系统dephi版
💻 ~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 + -