📄 unit8.pas
字号:
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls,unit1;
type
TForm8 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Button3: TButton;
ADOQuery1: TADOQuery;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
Edit2: TEdit;
Label3: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form8: TForm8;
implementation
{$R *.dfm}
procedure TForm8.Button1Click(Sender: TObject);
begin
form8.Close ;
end;
procedure TForm8.FormActivate(Sender: TObject);
begin
dbgrid1.DataSource.AutoEdit:=false;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 系部表');
adoquery1.Open;
edit1.ReadOnly:=True;
edit1.Text:='';
edit2.Text:='';
end;
procedure TForm8.DBGrid1CellClick(Column: TColumn);
begin
if not ADOQuery1.fieldbyname('系部编号').IsNull then
edit1.Text:=trim(ADOQuery1.fieldbyname('系部编号').Value)
else
edit1.Text:='';
if not ADOQuery1.fieldbyname('系部名称').IsNull then
edit2.Text:=trim(ADOQuery1.fieldbyname('系部名称').Value)
else
edit2.Text:='';
end;
procedure TForm8.DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key=VK_UP) or (key=VK_DOWN) then
begin
if not ADOQuery1.fieldbyname('系部编号').IsNull then
edit1.Text:=trim(ADOQuery1.fieldbyname('系部编号').Value)
else
edit1.Text:='';
if not ADOQuery1.fieldbyname('系部名称').IsNull then
edit2.Text:=trim(ADOQuery1.fieldbyname('系部名称').Value)
else
edit2.Text:='';
end;
end;
procedure TForm8.Button3Click(Sender: TObject);
var
xbbh,xbmc,s1: string;
begin
if (trim(edit1.Text)='') or (trim(edit2.Text)='') then
application.MessageBox('数据不完整!','提示',mb_ok)
else
begin
xbbh:=trim(ADOQuery1.fieldbyname('系部编号').Value);
xbmc:=trim(ADOQuery1.fieldbyname('系部名称').Value);
if (xbbh=trim(edit1.Text)) and (xbmc=trim(edit2.Text)) then
application.MessageBox('数据未改变!','提示',mb_ok)
else
try
adoquery2.close;
adoquery2.sql.clear;
s1:='update 系部表 set 系部名称='+quotedstr(trim(edit2.Text))
+' where 系部编号='+quotedstr(trim(edit1.Text));
Adoquery2.sql.add(s1);
Adoquery2.ExecSQL;
adoquery1.Requery();
application.MessageBox('系部名称修改成功!','提示',mb_ok);
except
on E: Exception do
messagedlg(E.Message,mterror,[mbok],0);
end;
end;
end;
procedure TForm8.Button2Click(Sender: TObject);
begin
if (trim(edit1.Text)='') or (trim(edit2.Text)='') then
application.MessageBox('未选择要删除的纪录!','提示',mb_ok)
else if application.MessageBox('你确实要删除当前纪录吗?','警告!',mb_okcancel)=idok then
begin
adoquery2.close;
adoquery2.sql.clear;
Adoquery2.sql.add('delete from 系部表 where 系部编号='+quotedstr(trim(edit1.Text)));
Adoquery2.ExecSQL;
adoquery1.Requery();
//或者使用下面的1条语句替代上面5条语句
//adoquery1.Delete;
application.MessageBox('系部纪录删除成功!','提示',mb_ok);
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -