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

📄 unit_frmuser.pas

📁 影院售票系统完整源码
💻 PAS
字号:
unit Unit_FrmUser;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Mask, Buttons,CyberEdit, CyberXPMenu,
  CyberCmboBx;
type
  TFrmUser = class(TForm)
    Panel2: TPanel;
    BtnSave: TBitBtn;
    BtnExit: TBitBtn;
    GroupBox1: TGroupBox;
    chkused: TCheckBox;
    Label4: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    EdtCode: TCyberEdit;
    LBLCODE: TLabel;
    Label1: TLabel;
    EdtName: TCyberEdit;
    lblcomment: TLabel;
    CyberXPMenu1: TCyberXPMenu;
    Combgroup: TCyberComboBox;
    Edtpwd: TCyberEdit;
    Combcinema: TCyberComboBox;
    Memoremark: TCyberMemo;
    procedure BtnExitClick(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure EdtPwdKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
    procedure CombgroupChange(Sender: TObject);
    procedure BtnSaveClick(Sender: TObject);
    procedure CombcinemaChange(Sender: TObject);
  private
    _editmode           :Boolean;
    groupid,cinemaid    :integer;
    procedure clear;
    procedure GetUserbyid(id:integer);
    { Private declarations }
  public
    id                  :integer;
    groupname,cinemaname:string;
    constructor MyCreate(AOwner: TComponent; Editmode: Boolean);
    { Public declarations }
  end;
var
  FrmUser: TFrmUser;
implementation
uses unit_public,unit_adodm,unit_frmusermain;
{$R *.dfm}

procedure TFrmUser.clear;
begin
  self.EdtCode.Text :='';
  self.EdtName.Text :='';
  self.EdtPwd.Text :='';
  self.Memoremark .Text :='';
  self.chkused.Checked:=true;    
end;

procedure TFrmUser.BtnExitClick(Sender: TObject);
begin
  close;
end;

procedure TFrmUser.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if  key=27 then close;
end;

procedure TFrmUser.EdtPwdKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=13 then perform(WM_NEXTDLGCTL,0,0);
end;

constructor TFrmUser.MyCreate(AOwner: TComponent; Editmode: Boolean);
begin
  inherited Create(AOwner);
  _editmode:=Editmode;
end;

procedure TFrmUser.FormShow(Sender: TObject);
begin
  publicinfo.DatasetToCombbox (TCombobox(combgroup),1);
  if Combgroup.Items.Count >0 then
  begin
    groupid     :=integer(Combgroup.Items.Objects[Combgroup.ItemIndex]);
    groupname   :=Combgroup.text
  end;
  publicinfo.DatasetToCombbox (TCombobox(combcinema),2);
  if combcinema.Items.Count >0 then
  begin
    cinemaid     :=integer(combcinema.Items.Objects[combcinema.ItemIndex]);
    cinemaname   :=combcinema.text
  end;
  if _editmode then  GetUserbyid(id);
end;

procedure TFrmUser.CombgroupChange(Sender: TObject);
begin
  if Combgroup.Items.Count >0 then
  begin
    groupid     :=integer(Combgroup.Items.Objects[Combgroup.ItemIndex]);
    groupname   :=Combgroup.text
  end;
end;

procedure TFrmUser.BtnSaveClick(Sender: TObject);
var
  _code,_name,_pwd,_description,_used:string;
  sqlstr        :string ;
begin
  _code         :=edtcode.Text ;
  _name         :=EdtName.Text ;
  _pwd          :=edtpwd.Text ;
  _description  :=Memoremark.Text;
  if chkused.Checked then
    _used:='1'
  else
    _used:='0';
  if _editmode then
  begin
    {sqlstr:='select count(*) as reccount from tbluser where loginname='+#39+_code+#39;
    if (publicinfo.Execsql(sqlstr,false)) then
    begin
      Adodm.ADOQRY.First ;
      if Adodm.ADOQRY.FieldByName('reccount').AsInteger>0 then
      begin
        publicinfo.showmsg('此登录号已经存在!');
        Edtcode.SetFocus ;
        exit;
      end;
    end;  }
    sqlstr:='update tbluser set loginname='+#39+_code+#39+
            ',username='+#39+_name+#39+',groupid='+inttostr(groupid)+
            ',cinemaid='+inttostr(cinemaid)+',pwd='+#39+_pwd+#39 +
            ',remarks='+#39+_description+#39+',isused='+#39+_used+#39+
            'where id='+inttostr(id);
    if publicinfo.Execsql(sqlstr,true) then
    begin
      publicinfo.showmsg('操作员信息修改成功');
      ModalResult := mrOK;
    end;
  end
  else
  begin
    sqlstr:='select count(*) as reccount from tbluser where loginname='+#39+_code+#39;
    if (publicinfo.Execsql(sqlstr,false)) then
    begin
      Adodm.ADOQRY.First ;
      if Adodm.ADOQRY.FieldByName('reccount').AsInteger>0 then
      begin
        publicinfo.showmsg('此登录号已经存在!');
        Edtcode.SetFocus ;
        exit;
      end;
    end;
    sqlstr:='insert into tbluser(loginname,username,pwd,groupid,cinemaid,isused,remarks) values('+
             #39+_code+#39+','+#39+_name+#39+','+ #39+_pwd+#39+','+
             inttostr(groupid)+','+inttostr(cinemaid)+','+#39+_used+#39+','+#39+_description+#39+')';
    if publicinfo.Execsql(sqlstr,true) then
    begin
      publicinfo.showmsg('操作员信息添加成功');
    end;
  end;
end;

procedure TFrmUser.CombcinemaChange(Sender: TObject);
begin
  if Combcinema.Items.Count >0 then
  begin
    cinemaid     :=integer(Combcinema.Items.Objects[Combcinema.ItemIndex]);
    cinemaname   :=Combcinema.text
  end;
end;

procedure TFrmUser.GetUserbyid(id: integer);
var
  sqlstr:string;
begin
  if id<=0 then exit; 
  sqlstr:='select * from tbluser_view where id='+inttostr(id);
  if publicinfo.Execsql(sqlstr,false) then
  begin
    if adodm.ADOQRY.RecordCount<0 then exit;
    edtcode.Text :=adodm.ADOQRY.fieldbyname('loginname').AsString ;
    edtname.Text :=adodm.ADOQRY.fieldbyname('username').AsString ;
    edtpwd.Text  :=adodm.ADOQRY.fieldbyname('pwd').AsString ;
    if adodm.ADOQRY.fieldbyname('isused').AsBoolean  =true then
       chkused.Checked :=true
    else
       chkused.Checked :=false;
    combgroup.Text :=adodm.ADOQRY.fieldbyname('groupname').AsString ;
    combcinema.Text :=adodm.ADOQRY.fieldbyname('cinema').AsString ;
  end;
end;

end.










                                   




                                                                                    

⌨️ 快捷键说明

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