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

📄 qxgl_form.pas

📁 delphi+sql2000实现的图书管理系统软件
💻 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,ADODB;

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
    Share_Unit;

{$R *.dfm}

var
  QXGL_T:TADOTable;
  QXGL_Q:TADOQuery;

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:=TADOTable.Create(nil);
  QXGL_T.Connection:=Connect;
  QXGL_T.TableName:='登录用户';
  QXGL_T.Open;

  QXGL_Q:=TADOQuery.Create(nil);
  QXGL_Q.Connection:=Connect;

end;
//***********************************************************************************
procedure TQXGL_F.FormShow(Sender: TObject);
begin
  QXGL_Q.SQL.Add('Select 帐号,A.姓名,B.姓名 From 登录用户 A,权限 B Where A.权限=B.权限');
  QX_DS.DataSet:=QXGL_Q;
  QX_DG.Columns[0].FieldName:='帐号';
  QX_DG.Columns[1].FieldName:='A.姓名';
  QX_DG.Columns[2].FieldName:='B.姓名';
  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('帐号',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:TADOQuery;
 // Num:integer;
begin
  QXGL_T1:=TADOQuery.Create(nil);
  QXGL_T1.Connection:=Connect;
  if QXXG_FRBtn.Checked then
    begin
      QXGL_T.Locate('帐号',QXBH_FE.Text,[]);
      QXGL_T.Edit;
      QXGL_T.FieldByName('权限').AsString:=IntToStr(QX_FCB.ItemIndex);
      if JMM_FE.Text<>'' then
        begin
          QXGL_T1.Close;
          QXGL_T1.SQL.Clear;
          QXGL_T1.SQL.Add('Select 密码 From 登录用户 Where 帐号=:帐号');
          QXGL_T1.Parameters.ParamByName('帐号').Value:=QXBH_FE.Text;
          QXGL_T1.Open;
          if JMM_FE.Text=QXGL_T1.FieldValues['密码'] then
            begin
              //QXGL_T1.Close;
              FreeAndNil(QXGL_T1);
              if XMM_FE.Text=QR_FE.Text then QXGL_T.FieldByName('密码').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 * From 登录用户 Where 帐号=:帐号');
      QXGL_T1.Parameters.ParamByName('帐号').Value:=QXBH_FE.Text;
      QXGL_T1.Open;
      //Num:=QXGL_T1.RecordCount;
      //QXGL_T1.Close;

      if QXGL_T1.RecordCount >0 then
        begin
          MessageBox(handle,'此编号已经存在了,请换个编号!','错误',MB_OK or MB_ICONERROR);
          exit;
        end;
      QXGL_T.Append;
      QXGL_T.FieldByName('帐号').AsString:=QXBH_FE.Text;
      QXGL_T.FieldByName('姓名').AsString:=QXXM_FE.Text;
      QXGL_T.FieldByName('权限').AsString:=IntToStr(QX_FCB.ItemIndex);

      if XMM_FE.Text=QR_FE.Text then QXGL_T.FieldByName('密码').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;
  FreeAndNil(QXGL_T1);
  QXGL_Q.Close; //更新数据重要
  QXGL_Q.Open;  //显示更新后的数据
end;

end.

⌨️ 快捷键说明

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