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

📄 unit4.pas

📁 一个完整的工资管理系统 主要走查询 添加 删除 管理等功能
💻 PAS
字号:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls,math;

type
  TForm4 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    DBGrid1: TDBGrid;
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
    function DBGridAutoSize(mDBGrid: TDBGrid; mOffset: Integer): Boolean;
  public
    { Public declarations }
  end;

var
  Form4: TForm4;

implementation

uses Unit1, Unit2, Unit3, Unit5, Unit6, Unit7;

{$R *.dfm}

procedure TForm4.Button4Click(Sender: TObject);
begin
form4.Close;
end;
function TForm4.DBGridAutoSize(mDBGrid: TDBGrid; mOffset: Integer ): Boolean;
{ 返回数据网格自动适应宽度是否成功 }
var
  I: Integer;
begin
mOffset:=39;
  Result := False;
  if not Assigned(mDBGrid) then Exit;
  if not Assigned(mDBGrid.DataSource) then Exit;
  if not Assigned(mDBGrid.DataSource.DataSet) then Exit;
  if not mDBGrid.DataSource.DataSet.Active then Exit;
  for I := 0 to mDBGrid.Columns.Count - 1 do begin
    if not mDBGrid.Columns[I].Visible then Continue;
    if Assigned(mDBGrid.Columns[I].Field) then
      mDBGrid.Columns[I].Width := Max(mDBGrid.Columns[I].Field.Tag,
        mDBGrid.Canvas.TextWidth(mDBGrid.Columns[I].Title.Caption)) + mOffset
    else mDBGrid.Columns[I].Width :=
      mDBGrid.Canvas.TextWidth(mDBGrid.Columns[I].Title.Caption) + mOffset;
    mDBGrid.Refresh;
  end;
  Result := True;
end; { DBGridAutoSize }






procedure TForm4.Button2Click(Sender: TObject);
begin
edit1.Clear;
 edit2.Clear;
 edit3.Clear;
 edit4.Clear;
 edit5.Clear;
 edit6.Clear;
 edit7.Clear;
 edit8.Clear;
end;

procedure TForm4.FormCreate(Sender: TObject);
begin
 ComboBox1.Items.Add('普通用户');
 ComboBox1.Items.Add('一般用户');
 ComboBox1.Items.Add('超级用户');
 ComboBox2.Items.Add('A');
 ComboBox2.Items.Add('B');
 ComboBox2.Items.Add('C');
  with dm.ADOQuery1 do
  begin
  sql.Clear;
  sql.Add('select 用户id,用户名称,用户类别,权限,身份证号,住址,电话,邮箱 from yonghuxinxi');
  open;
  end;
    DBGridAutoSize(DBGrid1,75);
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
if edit1.Text='' then
begin
 application.MessageBox('用户名必须填写!','错误',mb_iconhand+mb_yesno);
    edit1.Clear;
 edit1.SetFocus;
 exit;
end;
if edit3.Text<>edit4.Text then
begin
application.MessageBox('两次输入的密码不一致,请检查!','错误',mb_iconhand+mb_yesno);
 edit4.Clear;
 edit5.Clear;
 edit4.SetFocus;
 exit;
end;
if length(edit5.Text)<>18 then
begin
application.MessageBox('身份证号码必须是18位!!','错误',mb_iconhand+mb_yesno);
 edit5.Clear;
 edit5.SetFocus;
 exit;
end;
if edit8.Text='' then
begin
 application.MessageBox('邮箱必须填写!','错误',mb_iconhand+mb_yesno);
 edit8.Clear;
 edit8.SetFocus;
 exit;
end;
 dm.ADODataSet1.Close;
 dm.ADODataSet1.CommandText:= 'select * from yonghuxinxi where 用户id='''+edit1.Text+''' ';
  dm.ADODataSet1.Open;
  if dm.ADODataSet1.Eof then
  begin
  with dm.ADOQuery1 do
  begin
  sql.Clear;
  sql.Add('select * from yonghuxinxi');
  open;
  end;
  dm.adoconnection1.BeginTrans;
   dm.adoquery1.Insert;
  dm.adoquery1.FieldByName('用户id').AsString:=edit1.Text;
  dm.adoquery1.FieldByName('用户名称').AsString:=edit2.Text;
  dm.adoquery1.FieldByName('密码').AsString:=edit3.Text;
  dm.adoquery1.FieldByName('身份证号').AsString:=edit5.Text;
  dm.adoquery1.FieldByName('住址').AsString:=edit6.Text;
  dm.adoquery1.FieldByName('电话').AsString:=edit7.Text;
  dm.adoquery1.FieldByName('权限').AsString:=combobox2.Text;
  dm.adoquery1.FieldByName('用户类别').AsString:=combobox1.Text;
  dm.adoquery1.FieldByName('邮箱').AsString:=edit8.Text;
     dm.adoquery1.Post;
     dm.adoconnection1.CommitTrans;
     edit1.Clear;
 edit2.Clear;
 edit3.Clear;
 edit4.Clear;
 edit5.Clear;
 edit6.Clear;
 edit7.Clear;
 edit8.Clear;
      with dm.adoquery1 do
   begin
   close;
   sql.Clear;
   sql.Add('select 用户id,用户名称,用户类别,权限,身份证号,住址,电话,邮箱 from yonghuxinxi');
   open;
   DBGridAutoSize(DBGrid1,75);
   end

   end
      else
      begin
         application.MessageBox('数据库中已经有的书号,请重新输入!','错误',mb_iconhand+mb_yesno);
          edit1.Clear;
          edit1.SetFocus;



  end;

end;

procedure TForm4.Button3Click(Sender: TObject);
begin
 application.CreateForm(TForm7,Form7);
form7.ShowModal;
form7.Free;
end;

end.

⌨️ 快捷键说明

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