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

📄 kcjcxx.~pas

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

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

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

var
  f_kcjcxx: Tf_kcjcxx;

implementation

uses DataModal;

{$R *.dfm}

{ Tf_kcjcxx }

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

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

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

procedure Tf_kcjcxx.B2Click(Sender: TObject);
begin
  inherited;
  if (Data.Query1.Active = True)and(Data.Query1.RecordCount>0) then
    if(Trim(Edit1.Text)<>'')and(Trim(Edit2.Text)<>'')and(Trim(ComboBox1.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_kcjcxx set kcdm =:a,kcmc = :b,kclb = :c where kcdm = :d');
            ParamByName('a').AsString := Trim(Edit1.Text);
            ParamByName('b').AsString := Trim(Edit2.Text);
            ParamByName('c').AsString := Trim(ComboBox1.Text);
            ParamByName('d').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_kcjcxx.B3Click(Sender: TObject);
begin
  inherited;
  if (Trim(Edit1.Text)<>'')and(Trim(Edit2.Text)<>'')and(Trim(ComboBox1.Text)<>'') then
    Try
      with Data.Query2 do
      begin
        Close;
        SQL.Clear;
        SQL.Add('insert t_kcjcxx values(:a,:b,:c)');
        ParamByName('a').AsString := Trim(Edit1.Text);
        ParamByName('b').AsString := Trim(Edit2.Text);
        ParamByName('c').AsString := Trim(ComboBox1.Text);
        ExecSQL;
      end;
      Application.MessageBox('操作成功.','提示',64);
      B4.OnClick(Sender);
      B3.Enabled := False;
    Except
      Application.MessageBox('操作失败.','提示',64);
    End
  else
    Application.MessageBox('区域信息不能为空.','提示',64);
end;

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

procedure Tf_kcjcxx.B5Click(Sender: TObject);
begin
  inherited;
  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_kcjcxx.DBGrid1CellClick(Column: TColumn);
begin
  inherited;
  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;
    ComboBox1.ItemIndex := ComboBox1.Items.IndexOf(Trim(Data.Query1.Fields[2].AsString));
  end;
end;

procedure Tf_kcjcxx.FormShow(Sender: TObject);
begin
  inherited;
  ComboBox1.Clear;
  Data.Query1.RequestLive := True;
  with Data.Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select lbmc from t_kclb');
    Open;
  end;
  if Data.Query1.RecordCount>0 then
    while Not Data.Query1.Eof do
    begin
      ComboBox1.Items.Add(Data.Query1.Fields[0].AsString);
      Data.Query1.Next;
    end;
  ComboBox1.ItemIndex := 0;
  B4.OnClick(Sender);
end;

procedure Tf_kcjcxx.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin  
  if Key = vk_Delete then
  begin
  end;
end;

procedure Tf_kcjcxx.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  Key := #0;
end;

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

end.

⌨️ 快捷键说明

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