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

📄 qxgl_form.pas

📁 图书管理系统2.0版
💻 PAS
字号:
unit QXGL_Form;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, TFlatEditUnit, TFlatRadioButtonUnit, TFlatButtonUnit,
  Grids, DBGrids, TFlatGroupBoxUnit, ExtCtrls, TFlatComboBoxUnit,DB,DBTables;

type
  TQXGL_F = class(TForm)
    Panel1: TPanel;
    FlatGroupBox5: TFlatGroupBox;
    QX_DG: TDBGrid;
    QXDel_FBtn: TFlatButton;
    FlatGroupBox7: TFlatGroupBox;
    QXXG_FRBtn: TFlatRadioButton;
    QXTJ_FRBtn: TFlatRadioButton;
    FlatGroupBox8: TFlatGroupBox;
    Label18: TLabel;
    Label19: TLabel;
    QXBH_FE: TFlatEdit;
    QXXM_FE: TFlatEdit;
    QXZX_FBtn: TFlatButton;
    Button1: TButton;
    Label1: TLabel;
    QX_FCB: TFlatComboBox;
    QX_DS: TDataSource;
    Label2: TLabel;
    JMM_FE: TFlatEdit;
    Label3: TLabel;
    XMM_FE: TFlatEdit;
    Label4: TLabel;
    QR_FE: TFlatEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure QXDel_FBtnClick(Sender: TObject);
    procedure QX_DGDblClick(Sender: TObject);
    procedure QXTJ_FRBtnClick(Sender: TObject);
    procedure QXXG_FRBtnClick(Sender: TObject);
    procedure QXZX_FBtnClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  QXGL_F: TQXGL_F;

implementation

uses
  Common_Unit;

{$R *.dfm}

var
  QXGL_T:TTable;
  QXGL_Q:TQuery;

procedure TQXGL_F.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action:=caFree;
end;
//***********************************************************************************
procedure TQXGL_F.FormDestroy(Sender: TObject);
begin
  QXGL_T.Close;
  FreeAndNil(QXGL_T);
  QXGL_Q.Close;
  FreeAndNil(QXGL_Q);
  QXGL_F:=nil;
end;
//***********************************************************************************
procedure TQXGL_F.Button1Click(Sender: TObject);
begin
  close;
end;
//***********************************************************************************
procedure TQXGL_F.FormCreate(Sender: TObject);
begin
  QXGL_T:=TTable.Create(nil);
  QXGL_T.DatabaseName:=DataPath;
  QXGL_T.TableName:='DLYB.db';
  QXGL_T.Open;

  QXGL_Q:=TQuery.Create(nil);
  QXGL_Q.DatabaseName:=DataPath;

end;
//***********************************************************************************
procedure TQXGL_F.FormShow(Sender: TObject);
begin
  QXGL_Q.SQL.Add('Select ID,A.Name XM,B.Name MC From DLYB A,QXGL B Where A.QXID=B.QXID');
  QX_DS.DataSet:=QXGL_Q;
  QX_DG.Columns[0].FieldName:='ID';
  QX_DG.Columns[1].FieldName:='XM';
  QX_DG.Columns[2].FieldName:='MC';
  QXGL_Q.Open;

  QXTJ_FRBtn.Checked:=True;
end;
//***********************************************************************************
procedure TQXGL_F.QXDel_FBtnClick(Sender: TObject);
var
  Flag:integer;
begin
  Flag:=MessageBox(handle,'警告:删除是永久的不可恢复的!确认删除吗?','确认删除',MB_OKCANCEL or MB_ICONWarning);
  if flag=IDCANCEL then exit;
  QXGL_T.Locate('ID',QX_DG.Fields[0].AsString,[]);
  QXGL_T.Delete;
  QXGL_Q.Close;
  QXGL_Q.Open;
end;
//***********************************************************************************
procedure TQXGL_F.QX_DGDblClick(Sender: TObject);         //准备修改
begin
  QXXG_FRBtn.Checked:=true;
  QXBH_FE.Text:=QX_DG.Fields[0].AsString;
  QXBH_FE.Enabled:=False;
  QXXM_FE.Enabled:=false;
  QXXM_FE.Text:=QX_DG.Fields[1].AsString;
  QX_FCB.ItemIndex:=QX_FCB.Items.IndexOf(QX_DG.Fields[2].AsString);
end;
//***********************************************************************************
procedure TQXGL_F.QXTJ_FRBtnClick(Sender: TObject);       //选中添加
begin
  QXBH_FE.Text:='';
  QXBH_FE.Enabled:=true;
  QXXM_FE.Text:='';
  QX_FCB.ItemIndex:=0;
  JMM_FE.Text:='';
  JMM_FE.Enabled:=false;
  QXXM_FE.Enabled:=true;
  XMM_FE.Text:='';
  QR_FE.Text:='';
end;
//***********************************************************************************
procedure TQXGL_F.QXXG_FRBtnClick(Sender: TObject);
begin
  QX_DGDblClick(QXDel_FBtn);
  JMM_FE.Enabled:=true;
end;
//***********************************************************************************
procedure TQXGL_F.QXZX_FBtnClick(Sender: TObject);     //执行操作
var
  QXGL_T1:TQuery;
  Num:integer;
begin
  QXGL_T1:=TQuery.Create(nil);
  QXGL_T1.DatabaseName:=DataPath;
  if QXXG_FRBtn.Checked then
    begin
      QXGL_T.Locate('ID',QXBH_FE.Text,[]);
      QXGL_T.Edit;
      QXGL_T.FieldByName('QXID').AsString:=IntToStr(QX_FCB.ItemIndex);
      if JMM_FE.Text<>'' then
        begin
          QXGL_T1.Close;
          QXGL_T1.SQL.Clear;
          QXGL_T1.SQL.Add('Select MM From DLYB Where ID=:ID');
          QXGL_T1.ParamByName('ID').AsString:=QXBH_FE.Text;
          QXGL_T1.Open;
          if JMM_FE.Text=QXGL_T1.FieldValues['MM'] then
            begin
              QXGL_T1.Close;
              FreeAndNil(QXGL_T1);
              if XMM_FE.Text=QR_FE.Text then QXGL_T.FieldByName('MM').AsString:=QR_FE.Text
              else begin
                MessageBox(handle,'两次输入的新密码不一致!','错误',MB_OK or MB_ICONERROR);
                QXGL_T.Cancel;
                exit;
              end;
            end
            else begin
              MessageBox(handle,'旧密码错误请重新输入!','错误',MB_OK or MB_ICONERROR);
              QXGL_T.Cancel;
              exit;
            end;
        end;
      QXGL_T.Post;
      MessageBox(handle,'记录修改成功!','成功',MB_OK or MB_ICONINFORMATION);
    end
    else begin
      QXGL_T1.Close;
      QXGL_T1.SQL.Clear;
      QXGL_T1.SQL.Add('Select MM From DLYB Where ID=:ID');
      QXGL_T1.ParamByName('ID').AsString:=QXBH_FE.Text;
      QXGL_T1.Open;
      Num:=QXGL_T1.RecordCount;
      QXGL_T1.Close;
      FreeAndNil(QXGL_T1);
      if Num>0 then
        begin
          MessageBox(handle,'此编号已经存在了,请换个编号!','错误',MB_OK or MB_ICONERROR);
          exit;
        end;
      QXGL_T.Append;
      QXGL_T.FieldByName('ID').AsString:=QXBH_FE.Text;
      QXGL_T.FieldByName('Name').AsString:=QXXM_FE.Text;
      QXGL_T.FieldByName('QXID').AsString:=IntToStr(QX_FCB.ItemIndex);
      if XMM_FE.Text=QR_FE.Text then QXGL_T.FieldByName('MM').AsString:=QR_FE.Text
      else begin
        MessageBox(handle,'两次输入的新密码不一致!','错误',MB_OK or MB_ICONERROR);
        QXGL_T.Cancel;
        exit;
      end;
      QXGL_T.Post;
      MessageBox(handle,'记录添加成功!','成功',MB_OK or MB_ICONINFORMATION);
      QXTJ_FRBtnClick(QXTJ_FRBtn);
    end;
  QXGL_Q.Close;
  QXGL_Q.Open;
end;

end.

⌨️ 快捷键说明

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