?? bmxx.pas
字號:
unit bmxx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, StdCtrls, ExtCtrls, Buttons, ComCtrls,
ToolWin;
type
Tbmxxfrm = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
Panel1: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
procedure FormShow(Sender: TObject);
procedure editvalue;
procedure editclear;
procedure DBGrid1CellClick(Column: TColumn);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
m:integer;
end;
const
m=0;
var
bmxxfrm: Tbmxxfrm;
implementation
uses dbdata;
{$R *.dfm}
procedure Tbmxxfrm.FormShow(Sender: TObject);
begin
with data.ADOQYbmxx do
begin
close;
sql.Clear;
sql.Add('select * from 部門表');
open;
end;
data.ADOQYbmxx.Active:=true;
if data.ADOQYbmxx.FieldByName('部門編號').Value= null then
begin
application.MessageBox('數據庫中沒有數據,請添加數據!','提示',64);
speedbutton1.Click;
end
end;
procedure Tbmxxfrm.editvalue;
begin
edit1.Text:=data.ADOQYbmxx.FieldByName('部門編號').Value;
edit2.Text:=data.ADOQYbmxx.FieldByName('部門名稱').Value;
end;
procedure Tbmxxfrm.editclear;
begin
edit1.Clear;
edit2.Clear;
end;
procedure Tbmxxfrm.DBGrid1CellClick(Column: TColumn);
begin
If DBGrid1.DataSource.DataSet<> Nil then
if DBGrid1.DataSource.DataSet.RecordCount>0 then
edit1.Text:=data.ADOQYbmxx.FieldByName('部門編號').Value;
edit2.Text:=data.ADOQYbmxx.FieldByName('部門名稱').Value;
end;
procedure Tbmxxfrm.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key = vk_Return) or(Key = vk_Down) then
Edit2.SetFocus;
end;
procedure Tbmxxfrm.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = vk_Up then
Edit1.SetFocus;
end;
procedure Tbmxxfrm.SpeedButton1Click(Sender: TObject);
var
s,m:string;
i:integer;
begin
edit1.Clear;
edit2.Clear;
With data.ADOpublic do
begin
Close;
SQL.Clear;
SQL.Add('select max(部門編號) as ss From 部門表 ');
Open;
end;
If data.ADOpublic.FieldByName('ss').Value = null then
s := '001'
else
begin
m:= Trim(data.ADOpublic.FieldByName('ss').Value) ;
i:= StrToInt(copy(m,2,3)) ;
if i<9 then
s:= '00'+ InttoStr(i +1)
else if i<99 then
s:='0'+ InttoStr(i +1)
else
s:= InttoStr(i +1);
end;
edit1.Text:=s;
speedbutton4.Enabled:=true;
speedbutton5.Enabled:=true;
edit2.ReadOnly:=false;
speedbutton2.Enabled:=false;
end;
procedure Tbmxxfrm.SpeedButton2Click(Sender: TObject);
begin
m:=1;
edit1.ReadOnly:=false;
edit2.ReadOnly:=false;
speedbutton4.Enabled:=true;
speedbutton5.Enabled:=true;
end;
procedure Tbmxxfrm.SpeedButton3Click(Sender: TObject);
begin
with data.ADOQYygxx do
begin
close;
sql.Clear;
sql.Add('select 所屬部門 from 人事表 where 所屬部門 = :a');
parameters.ParamByName('a').Value:=trim(edit2.Text);
open;
end;
if data.ADOQYygxx.RecordCount>0 then
application.MessageBox('此信息已經使用,不能刪除!','警告',64)
else
if messagebox(self.Handle,'真的要刪除嗎?','提示',mb_yesno+mb_iconquestion)=idyes then
begin
data.ADOQYbmxx.Delete;
edit1.Clear;
edit2.Clear;
end;
end;
procedure Tbmxxfrm.SpeedButton4Click(Sender: TObject);
begin
if trim(edit1.Text)<>'' then
if trim(edit2.Text)<>'' then
if m=0 then
try
with data.ADOQYbmxx do
begin
close;
sql.Clear;
sql.Add('insert 部門表 values (:a,:b)');
parameters.ParamByName('a').Value:=trim(edit1.Text);
parameters.ParamByName('b').Value:=trim(edit2.Text);
execsql;
end;
edit1.ReadOnly:=true;
edit2.ReadOnly:=true;
speedbutton4.Enabled:=false;
speedbutton5.Enabled:=false;
speedbutton2.Enabled:=true;
edit1.Clear;
edit2.Clear;
self.OnShow(sender);
except
application.MessageBox('系統出錯!','警告',64);
end
else
begin
with data.ADOQYbmxx do
begin
edit;
fieldbyname('部門編號').Value:=trim(edit1.Text);
fieldbyname('部門名稱').Value:=trim(edit2.Text);
post;
end;
application.MessageBox('修改成功','提示',64);
m:=0;
speedbutton4.Enabled:=false;
speedbutton5.Enabled:=false;
end
else
application.MessageBox('請輸入部門名稱','提示',64)
else
application.MessageBox('請輸入部門編號','提示',64);
end;
procedure Tbmxxfrm.SpeedButton5Click(Sender: TObject);
begin
edit1.Clear;
edit2.Clear;
edit1.ReadOnly:=true;
edit1.ReadOnly:=true;
speedbutton4.Enabled:=false;
speedbutton5.Enabled:=false;
speedbutton2.Enabled:=true;
m:=0;
end;
procedure Tbmxxfrm.SpeedButton6Click(Sender: TObject);
begin
close;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -