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

📄 qydm.~pas

📁 这是用Delphi编写的中小企业管理系统
💻 ~PAS
字号:
unit qydm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, fram, ImgList, ExtCtrls, ComCtrls, ToolWin, Grids, DBGrids, DB,
  StdCtrls;

type
  Tf_qydm = class(Tf_fram)
    DataSource1: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Panel2: TPanel;
    DBGrid1: TDBGrid;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);Override;
    procedure B4Click(Sender: TObject);virtual;
    procedure FormShow(Sender: TObject);virtual;
    Procedure FindNext;virtual;
    procedure B1Click(Sender: TObject); virtual;
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState); virtual;
    procedure B3Click(Sender: TObject);virtual;
    procedure B5Click(Sender: TObject);virtual;
    procedure B2Click(Sender: TObject);virtual;
    procedure DBGrid1CellClick(Column: TColumn);virtual;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  f_qydm: Tf_qydm;

implementation
  uses DataModal;
{$R *.dfm}

procedure Tf_qydm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  Case Key of
    VK_INSERT : if B1.Enabled = True then
                  B1.OnClick(Sender);      
    VK_F2: if B2.Enabled = True then
             B2.OnClick(Sender);
    VK_F3: if B3.Enabled = True then
             B3.OnClick(Sender);
    VK_End: if B4.Enabled = True then
              B4.OnClick(Sender);
    VK_DELETE: if B5.Enabled = True then
                 B5.OnClick(Sender);
    VK_ESCAPE: if B8.Enabled = True then
                 B8.OnClick(Sender);
  end;
end;

procedure Tf_qydm.B4Click(Sender: TObject);
begin
  Edit1.Clear;
  Edit2.Clear;
  Edit1.SetFocus;
  with Data.Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from t_area');
    Open;
  end;
  if Data.Query1.RecordCount>0 then
      DataSource1.DataSet := Data.Query1;
end;

procedure Tf_qydm.FormShow(Sender: TObject);
begin
  Data.Query1.RequestLive := True;
  B4.OnClick(Sender);
end;

procedure Tf_qydm.B1Click(Sender: TObject);
begin
  B3.Enabled:=True;
  B4.OnClick(Sender);
end;

procedure Tf_qydm.FindNext;
begin
  if FindNextControl(ActiveControl,True,False,False)is TEdit then
    TEdit(FindNextControl(ActiveControl,True,False,False)).SetFocus;
end;

procedure Tf_qydm.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = vk_Return then
    FindNext;
end;

procedure Tf_qydm.B3Click(Sender: TObject);
begin
  if (Trim(Edit1.Text)<>'')and(Trim(Edit2.Text)<>'') then
    Try
      with Data.Query2 do
      begin
        Close;
        SQL.Clear;
        SQL.Add('insert t_area values(:a,:b)');
        ParamByName('a').AsString := Trim(Edit1.Text);
        ParamByName('b').AsString := Trim(Edit2.Text);
        ExecSQL;
      end;
      Application.MessageBox('操作成功.','提示',64);
      B4.OnClick(Sender);
      B3.Enabled := False;
    Except
      Application.MessageBox('操作失败.','提示',64);
    End
  else
    Application.MessageBox('区域信息不能为空.','提示',64);
end;

procedure Tf_qydm.B5Click(Sender: TObject);
begin
  if (Data.Query1.Active = True)and(Data.Query1.RecordCount>0) then
    if Application.MessageBox('确实要删除当前记录吗?','提示',mb_YesNo)=ID_Yes then
      Data.Query1.Delete;
end;

procedure Tf_qydm.B2Click(Sender: TObject);
begin
  if (Data.Query1.Active = True)and(Data.Query1.RecordCount>0) then
    if(Trim(Edit1.Text)<>'')and(Trim(Edit2.Text)<>'') then
    begin
      if Application.MessageBox('确实要修改当前记录吗?','提示',mb_YesNo)=ID_Yes then
      begin
        Try
          with Data.Query2 do
          begin
            Close;
            SQL.Clear;
            SQL.Add('update t_area set qydm =:a,qymc = :b where qydm = :c');
            ParamByName('a').AsString := Trim(Edit1.Text);
            ParamByName('b').AsString := Trim(Edit2.Text);
            ParamByName('c').AsString := Trim(Data.Query1.Fields[0].AsString);
            ExecSQL;
          end;
          Application.MessageBox('修改成功.','提示',64);
          B4.OnClick(Sender);
        Except
          Application.MessageBox('修改失败.','提示',64);
        end;
      end;
    end
    else
      Application.MessageBox('区域信息不完整.','提示',64)
  else
    Application.MessageBox('没有可修改的数据.','提示',64);
end;

procedure Tf_qydm.DBGrid1CellClick(Column: TColumn);
begin
  if (Data.Query1.Active = True)and(Data.Query1.RecordCount>0) then
  begin
    Edit1.Text := Data.Query1.Fields[0].AsString;
    Edit2.Text := Data.Query1.Fields[1].AsString;
  end;
end;

procedure Tf_qydm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  inherited;
  Data.Query1.RequestLive := False;
end;

end.

⌨️ 快捷键说明

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