📄 rsbm.pas
字号:
unit rsbm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, DBTables;
type
Trsbmb = class(TForm)
DataSource1: TDataSource;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Panel1: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
DBGrid1: TDBGrid;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
Label3: TLabel;
Edit3: TEdit;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormShow(Sender: TObject);
procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
rsbmb: Trsbmb;
implementation
uses datamodule;
{$R *.DFM}
procedure Trsbmb.BitBtn1Click(Sender: TObject);
begin
edit1.SetFocus;
datamodule1.rsbm.append;
edit1.text:='';
edit2.text:='';
edit3.text:='';
bitbtn4.enabled:=true;
end;
procedure Trsbmb.BitBtn4Click(Sender: TObject);
begin
if bitbtn4.enabled=false then
begin
showmessage('请先按新增或修改再输入内容!');
dbgrid1.SetFocus;
end
else
begin
with datamodule1.rsbm do
begin
fieldbyname('a_bm').asstring:=edit1.text;
fieldbyname('a_bz').asstring:=edit2.text;
fieldbyname('a_number').asstring:=edit3.text;
post;
end;
edit1.text:='';
edit2.text:='';
edit3.text:='';
bitbtn4.enabled:=false;
dbgrid1.setfocus;
end;
end;
procedure Trsbmb.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
{if inttostr(key)='107'then
bitbtn1.Click;
if inttostr(key)='69' then
bitbtn5.click;
if inttostr(key)='109' then
bitbtn2.click;
if inttostr(key)='13' then
bitbtn4.Click;}
end;
procedure Trsbmb.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
{if inttostr(key)='107'then
bitbtn1.Click;
if inttostr(key)='69' then
bitbtn5.click;
if inttostr(key)='109' then
bitbtn2.click;
if inttostr(key)='13' then
bitbtn4.Click; }
end;
procedure Trsbmb.FormCreate(Sender: TObject);
begin
bitbtn4.enabled:=false;
end;
procedure Trsbmb.BitBtn2Click(Sender: TObject);
var
str:string;
begin
str:='你确定要删除'+datamodule1.rsbm.fieldbyname('a_bm').asstring+'部门吗';
if application.messagebox('确定删除此记录','程序执行确认',mb_yesno+mb_defbutton2+mb_iconstop+mb_applmodal)<>idyes then
showmessage('记录未删除')
else
datamodule1.rsbm.Delete;
end;
procedure Trsbmb.BitBtn5Click(Sender: TObject);
begin
datamodule1.rsbm.Edit;
edit1.SetFocus;
edit1.text:=datamodule1.rsbm.fieldbyname('a_bm').asstring;
edit2.text:=datamodule1.rsbm.fieldbyname('a_bz').asstring;
edit3.text:=datamodule1.rsbm.fieldbyname('a_number').asstring;
bitbtn4.enabled:=true;
end;
procedure Trsbmb.BitBtn3Click(Sender: TObject);
begin
self.close;
end;
procedure Trsbmb.Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
edit2.setfocus;
if inttostr(key)='107' then
bitbtn1.click;
if key=69 then
bitbtn5.click;
end;
procedure Trsbmb.Edit2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
edit3.setfocus;
end;
procedure Trsbmb.Edit3KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
bitbtn4.Click;
end;
procedure Trsbmb.FormShow(Sender: TObject);
begin
bitbtn4.enabled:=false;
dbgrid1.setfocus;
end;
procedure Trsbmb.DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if inttostr(key)='107' then
bitbtn1.click;
if key=69 then
bitbtn5.click;
if key=109 then
bitbtn2.click;
end;
procedure Trsbmb.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
lastcolor: TColor;
begin
with (Sender as TDBGrid) do
begin
lastcolor := clred;
case DataSource.DataSet.RecNo mod 2 of
1: lastcolor := $00F5FEFD;
0: lastcolor := clwhite;
end;
if gdSelected in State then
lastcolor := clred; //选中行背景为绿色
Canvas.Brush.Color := lastcolor;
DefaultDrawDataCell(Rect, Column.Field, State);
end;
end;
procedure Trsbmb.FormClose(Sender: TObject; var Action: TCloseAction);
begin
self.release;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -