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

📄 uusers.pas

📁 delphi 源码 小型企业管理软件
💻 PAS
字号:
unit UUsers;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DB, StdCtrls, Mask, CheckLst,
  DBGridEh, ADODB, Buttons, se_controls, KsSkinButtons;

type
  TFrmUsers = class(TForm)
    DBGrid1: TDBGrid;
    DBNavigator1: TDBNavigator;
    Panel1: TPanel;
    panEdArea0: TPanel;
    edUPass: TMaskEdit;
    Label1: TLabel;
    Label2: TLabel;
    edUPass2: TMaskEdit;
    edUID: TDBEdit;
    Label3: TLabel;
    edUName: TDBEdit;
    Label4: TLabel;
    Memo1: TMemo;
    Panel2: TPanel;
    Panel3: TPanel;
    Splitter1: TSplitter;
    DBGridEh2: TDBGridEh;
    btnChangePower: TBitBtn;
    ExplainForm: TMemo;
    Panel4: TPanel;
    panEdArea: TPanel;
    SeSkinButton7: TSeSkinButton;
    SeSkinButton8: TSeSkinButton;
    SeSkinButton1: TSeSkinButton;
    SeSkinButton2: TSeSkinButton;
    SeSkinButton3: TSeSkinButton;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
    procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure btnChangePowerClick(Sender: TObject);
    procedure SeSkinButton7Click(Sender: TObject);
    procedure SeSkinButton1Click(Sender: TObject);
    procedure SeSkinButton2Click(Sender: TObject);
    procedure SeSkinButton3Click(Sender: TObject);
  private
    procedure EnableEdCtrls(Enabled: Boolean);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmUsers: TFrmUsers;

implementation

uses uDM, uFunc, uManData;

{$R *.dfm}

var
  AManData: TManData;

procedure TFrmUsers.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := caFree;
end;

procedure TFrmUsers.FormDestroy(Sender: TObject);
begin
  if AManData<>nil then begin
    AManData.SaveData;
    FreeAndNil(AManData);
  end;
  
  FrmUsers := nil;
end;

procedure TFrmUsers.FormCreate(Sender: TObject);
begin
  with DM.T_Users do if not Active then Open;

  AManData := TManData.Create(SeSkinButton7,SeSkinButton8,DM.T_Users,'users','uid',nil)
//  DM.T_usersAfterScroll(nil);
end;

procedure TFrmUsers.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then Perform(WM_NEXTDLGCTL,0,0);
end;

procedure TFrmUsers.FormShow(Sender: TObject);
begin
//  DM.T_Users.AfterScroll := T_Users_DataAfterScroll;
//  DM.T_Users.AfterOpen := T_Users_DataAfterScroll;
//  DM.T_UsersAfterScroll(DM.T_Users);
//  with DM.T_userPriv do
//      if not active then active := True;
end;

procedure TFrmUsers.EnableEdCtrls(Enabled:Boolean);
begin
  EnablePanCtrls(panEdArea, Enabled);
  if (DM.T_Users.FieldByName('UID').AsString = 'admin') then begin
    edUID.Enabled := False;
    edUName.Enabled := False;
  end;

  if Enabled then DM.T_Users.Edit;
end;

procedure TFrmUsers.DBNavigator1Click(Sender: TObject;
  Button: TNavigateBtn);
begin
  if Button=nbInsert then begin
    edUPass.text := '';
    edUPass2.text := '';

    EnableEdCtrls(True);
    edUID.SetFocus;

  end else if Button=nbEdit then begin
    EnableEdCtrls(True);
  end else if (Button=nbCancel) or (Button=nbPost) then begin
    EnableEdCtrls(False);
  end

end;

procedure TFrmUsers.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  ExecQuery(Memo1.Text);
end;

procedure TFrmUsers.btnChangePowerClick(Sender: TObject);
begin
  if DM.T_users.State = dsInsert then
    AbortMsg('新增用户必须先保存,才能更改权限!');

  DM.Q_Power.CheckBrowseMode ;
  DropTempTables('#t1');
  ExecQuery(GetSQLText('updatePI','MISC'),[DM.T_Users.FieldByName('uid').AsString]);
  ShowMsg('用户'+DM.T_Users.FieldByName('uid').AsString+'的权限已更改!')
end;

procedure TFrmUsers.SeSkinButton7Click(Sender: TObject);
begin
  edUPass.text := '';
  edUPass2.text := '';

  EnableEdCtrls(True);
  edUID.SetFocus;
end;

procedure TFrmUsers.SeSkinButton1Click(Sender: TObject);
begin
  EnableEdCtrls(True);
end;

procedure TFrmUsers.SeSkinButton2Click(Sender: TObject);
begin
  DM.T_Users.Post ;
  EnableEdCtrls(False);
end;

procedure TFrmUsers.SeSkinButton3Click(Sender: TObject);
begin
  DM.T_Users.Cancel  ;
  EnableEdCtrls(False);
end;

end.

⌨️ 快捷键说明

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