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

📄 inter.pas

📁 实现图书馆数据库管理功能
💻 PAS
字号:
unit inter;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, jpeg, ExtCtrls, StdCtrls, ComCtrls, Menus,  ImgList, 
  Buttons, Mask, DB, ADODB;

type
  Tenter = class(TForm)
    Image_title: TImage;
    Image_close: TImage;
    Image_right: TImage;
    Image_left: TImage;
    Image_bottom: TImage;
    Image_bian_top: TImage;
    Image_left_top: TImage;
    Image_right_top: TImage;
    Image_left_bottom: TImage;
    Image_right_bottom: TImage;
    Image1: TImage;
    Label1: TLabel;
    PopupMenu1: TPopupMenu;
    N2: TMenuItem;
    ImageList1: TImageList;
    Image2: TImage;
    Image3: TImage;
    Label2: TLabel;
    CB1: TComboBox;
    Label3: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    ADOConnection1: TADOConnection;
    ADS1: TADODataSet;
    procedure Image_titleMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_titleMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Image_titleMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormCreate(Sender: TObject);
    procedure Image_closeClick(Sender: TObject);
    procedure Image_rightMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_rightMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Image_rightMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormResize(Sender: TObject);
    procedure Image_leftMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_leftMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Image_leftMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_bottomMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_bottomMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Image_bottomMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_bian_topMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_bian_topMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Image_bian_topMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_maximizeClick(Sender: TObject);
    procedure Image_minimizeClick(Sender: TObject);
    procedure Image_closeMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_closeMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_right_bottomMouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure Image_right_bottomMouseMove(Sender: TObject;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_right_bottomMouseUp(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure Image_left_bottomMouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure Image_left_bottomMouseMove(Sender: TObject;
      Shift: TShiftState; X, Y: Integer);
    procedure Image_left_bottomMouseUp(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure d1Click(Sender: TObject);
    

   procedure wmgetminmaxinfo(var message:twmgetminmaxinfo);
    message wm_getminmaxinfo;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
   
  private

    { Private declarations }
    originalpos:tpoint;
    currentpos:tpoint;
    downpos:tpoint;
    mouselbuttondown:boolean;
    originalwid,originalhei:integer;
    flag:string;
    flag_normal:boolean;
     public
    { Public declarations }
  end;

var
  enter: Tenter;


implementation

uses Unit6, Unit2;

{$R *.dfm}





procedure Tenter.Image_titleMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
originalpos.X:=self.Left;
originalpos.Y:=self.Top;
downpos.X:=x;
downpos.Y:=y;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;






procedure Tenter.Image_titleMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if flag_normal then
begin
if mouselbuttondown then
  begin
  currentpos.X:=x;
  currentpos.Y:=y;
  currentpos:=clienttoscreen(currentpos);
  self.left:=originalpos.X+(currentpos.X-downpos.X);
  self.Top:=originalpos.Y+(currentpos.Y-downpos.Y);
end;
end
else
end;
procedure Tenter.Image_titleMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin

mouselbuttondown:=false;

end;




procedure Tenter.FormCreate(Sender: TObject);

begin
flag_normal:=true;
mouselbuttondown:=false;


ads1.Active:=false;
ads1.CommandText:='select * from 管理员';
ads1.Active:=true;
ads1.First;
while not ads1.Eof do
 begin
   cb1.Items.add(ads1.FieldValues['口令']);
   ads1.Next;
 end;
 cb1.ItemIndex:=0;
// self.Edit1.SetFocus;
 
//hr:=createrectrgn(0,0,width,height);
//setwindowrgn(handle,hr,true)
end;



procedure Tenter.Image_closeClick(Sender: TObject);
begin
close
end;

procedure Tenter.Image_rightMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
originalwid:=self.width;
downpos.X:=x;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;


procedure Tenter.Image_rightMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);

  begin
 if mouselbuttondown then
  begin
  currentpos.X:=x;
  currentpos:=clienttoscreen(currentpos);
  self.width:=originalwid+(currentpos.x-downpos.x);
 //hr:=createrectrgn(0,0,originalwid+currentpos.x-downpos.x,self.height);
//setwindowrgn(handle,hr,true);


end;

end;

procedure Tenter.Image_rightMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);

begin
//setwindowrgn(handle,hr,true);
mouselbuttondown:=false;
end;

procedure Tenter.FormResize(Sender: TObject);

begin
originalwid:=self.Width;
if flag='down' then
self.originalhei:=self.Height;
if flag='up' then
self.originalhei:=self.Height;

//mouselbuttondown:=false;
//hr:=createrectrgn(0,0,width,height);
//setwindowrgn(handle,hr,true);
end;

procedure Tenter.Image_leftMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin

originalwid:=self.width;
downpos.X:=x;
downpos:=clienttoscreen(downpos);
originalpos.X:=self.Left;
if button=mbleft then
mouselbuttondown:=true;
end;


procedure Tenter.Image_leftMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
currentpos.X:=x;
currentpos:=clienttoscreen(currentpos);
end;


procedure Tenter.Image_leftMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var  ch:integer;
begin
ch:=currentpos.x-downpos.x ;
if ch>0 then
begin
self.width:=originalwid-ch;
self.Left:=currentpos.x
end
else
begin
self.Left:=currentpos.x;
self.width:=originalwid-ch;
end;
mouselbuttondown:=false;
end;


procedure Tenter.Image_bottomMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
flag:='down';
originalhei:=self.height;
downpos.Y:=y;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;


procedure Tenter.Image_bottomMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mouselbuttondown then
begin
currentpos.Y:=y;
currentpos:=clienttoscreen(currentpos);
self.Height:=originalhei+(currentpos.y-downpos.y);
end;
end;


procedure Tenter.Image_bottomMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);

begin

mouselbuttondown:=false;
flag:='';
end;


procedure Tenter.Image_bian_topMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
flag:='up';
originalhei:=self.height;
downpos.Y:=y;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;


procedure Tenter.Image_bian_topMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);

begin
if mouselbuttondown then
begin
currentpos.Y:=y;
currentpos:=clienttoscreen(currentpos);
end
end;

procedure Tenter.Image_bian_topMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  var ch :integer;
begin

 ch:=self.currentpos.Y-self.downpos.Y;
 if ch<=0then
 begin
  self.Top:=currentpos.Y;
  self.Height:=self.originalhei-(ch);
  end
  else
 begin
  self.Height:=self.originalhei-(ch);
  self.Top:=currentpos.Y;
 end;
  mouselbuttondown:=false;
end;


procedure Tenter.Image_maximizeClick(Sender: TObject);
begin
if self.WindowState=wsnormal then
begin
self.WindowState:=wsmaximized;
flag_normal:=false;
image_bian_top.Enabled:=false;
image_bottom.Enabled:=false;
image_left.Enabled:=false;
image_left_bottom.Enabled:=false;
image_right.Enabled:=false;
image_right_bottom.Enabled:=false;


end
else
begin
self.WindowState:=wsnormal;
flag_normal:=true;
image_bian_top.Enabled:=true;
image_bottom.Enabled:=true;
image_left.Enabled:=true;
image_left_bottom.Enabled:=true;
image_right.Enabled:=true;
image_right_bottom.Enabled:=true;

end
end;



procedure Tenter.Image_minimizeClick(Sender: TObject);
begin
if self.WindowState=wsnormal then
begin
//showwindow(application.Handle,sw_minimize);
application.Minimize;
end
else if self.WindowState=wsmaximized then
 //showwindow(application.Handle,sw_minimize);
 application.Minimize;
end;

procedure Tenter.Image_closeMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
image_close.Picture.LoadFromFile('close_down.jpg');
end;

procedure Tenter.Image_closeMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 image_close.Picture.LoadFromFile('close.jpg');
end;

procedure Tenter.Image_right_bottomMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
originalwid:=self.width;
downpos.X:=x;
flag:='down';
originalhei:=self.height;
downpos.Y:=y;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;

procedure Tenter.Image_right_bottomMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
 if mouselbuttondown then
  begin
  currentpos.X:=x;
  currentpos.Y:=y;
currentpos:=clienttoscreen(currentpos);
self.width:=originalwid+(currentpos.x-downpos.x);
self.Height:=originalhei+(currentpos.Y-downpos.y);
end;
end;
procedure Tenter.Image_right_bottomMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
mouselbuttondown:=false;
flag:='';
end;

procedure Tenter.Image_left_bottomMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
originalwid:=self.width;
downpos.X:=x;
originalpos.X:=self.Left;
flag:='down';
originalhei:=self.height;
downpos.Y:=y;
downpos:=clienttoscreen(downpos);
if button=mbleft then
mouselbuttondown:=true;
end;

procedure Tenter.Image_left_bottomMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
if mouselbuttondown then
begin
currentpos.X:=x;
currentpos.Y:=y;
currentpos:=clienttoscreen(currentpos);

end;
end;

procedure Tenter.Image_left_bottomMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  var ch:integer;
begin
ch:=currentpos.x-downpos.x ;
if ch>0 then
begin
self.width:=originalwid-ch;
self.Left:=currentpos.x
end
else
begin
self.Left:=currentpos.x;
self.width:=originalwid-ch;
end;
self.Height:=originalhei+(currentpos.y-downpos.y);
mouselbuttondown:=false;
flag:='';
end;


procedure Tenter.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
if button=mbleft then
popupmenu1.Popup(self.Left+6,self.Top+28);
end;

procedure Tenter.d1Click(Sender: TObject);
begin
self.WindowState:=wsnormal;
flag_normal:=true;


end;

procedure tenter.wmgetminmaxinfo(var message:twmgetminmaxinfo);
var f:integer;
begin
with message.MinMaxInfo^ do
begin
f:=GetSystemMetrics(SM_CYSCREEN);
ptmaxsize.y:=f-28;
ptmaxposition.x:=0;
ptmaxposition.Y:=0;
end;
message.Result:=0;
inherited;
end;

procedure Tenter.Button2Click(Sender: TObject);
begin
close
end;

procedure Tenter.Button1Click(Sender: TObject);
var boll:boolean;
begin
ads1.Close;
ads1.Open;
boll:=ads1.Locate('口令;密码',vararrayof([cb1.text,edit1.text]),[locaseinsensitive]);
   if boll=false then
    begin
     ads1.Locate('口令',cb1.Text,[locaseinsensitive]);
     if (length(ads1.fieldbyname('密码').AsString)=0) and (edit1.Text='')then
       begin
          form2.SpeedButton9.Enabled:=ads1.FieldByName('书库管理').Value;
          form2.SpeedButton11.Enabled:=ads1.FieldByName('读者管理').Value;
          form2.SpeedButton14.Enabled:=ads1.FieldByName('图书类型').Value;
          form2.SpeedButton17.Enabled:=ads1.FieldByName('读者类型').Value;
          form2.PageControl1.Enabled:=ads1.FieldByName('借/还书').Value;
          form2.B1.Enabled:=form2.SpeedButton9.Enabled;
          form2.R1.Enabled:=form2.SpeedButton11.Enabled;
          form2.N21.Enabled:=form2.SpeedButton17.Enabled;
          form2.N20.Enabled:=form2.SpeedButton14.Enabled;

          form2.Show;
          exit;
       end
     else
        begin
           messagedlg('口令或密码错误!',mterror,[mbok],0);
           exit;
        end;
    end;
      ads1.Locate('口令',cb1.Text,[locaseinsensitive]);

        form2.SpeedButton9.Enabled:=ads1.FieldByName('书库管理').Value;
        form2.SpeedButton11.Enabled:=ads1.FieldByName('读者管理').Value;
        form2.SpeedButton14.Enabled:=ads1.FieldByName('图书类型').Value;
        form2.SpeedButton17.Enabled:=ads1.FieldByName('读者类型').Value;
        form2.PageControl1.Enabled:=ads1.FieldByName('借/还书').Value;
        form2.B1.Enabled:=form2.SpeedButton9.Enabled;
          form2.R1.Enabled:=form2.SpeedButton11.Enabled;
          form2.N21.Enabled:=form2.SpeedButton17.Enabled;
          form2.N20.Enabled:=form2.SpeedButton14.Enabled;
        form2.Show;

end;

procedure Tenter.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
     Button1Click(Sender);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -