📄 personunit.~pas
字号:
unit personUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, bsSkinCtrls, StdCtrls, Mask, bsSkinBoxCtrls,
BusinessSkinForm, bsSkinGrids, bsDBGrids;
type
TpersonForm = class(TForm)
bsSkinStdLabel1: TbsSkinStdLabel;
bsSkinStdLabel2: TbsSkinStdLabel;
bsSkinStdLabel3: TbsSkinStdLabel;
bsSkinStdLabel4: TbsSkinStdLabel;
bsSkinStdLabel5: TbsSkinStdLabel;
bsSkinButton3: TbsSkinButton;
bsSkinButton5: TbsSkinButton;
bsBusinessSkinForm1: TbsBusinessSkinForm;
bsSkinDBGrid1: TbsSkinDBGrid;
bsSkinButton4: TbsSkinButton;
bsSkinEdit1: TbsSkinEdit;
bsSkinEdit2: TbsSkinEdit;
bsSkinEdit3: TbsSkinEdit;
bsSkinEdit4: TbsSkinEdit;
bsSkinEdit5: TbsSkinEdit;
hScrollBar1: TbsSkinScrollBar;
vScrollBar2: TbsSkinScrollBar;
procedure DBGrid1CellClick(Column: TColumn);
// procedure bsSkinButton1Click(Sender: TObject);
//procedure bsSkinButton2Click(Sender: TObject);
procedure bsSkinButton5Click(Sender: TObject);
procedure bsSkinButton3Click(Sender: TObject);
procedure bsSkinButton4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure bsSkinDBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TbsColumn;
State: TGridDrawState);
procedure bsSkinDBGrid1CellClick(Column: TbsColumn);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bsSkinDBGrid1TitleClick(Column: TbsColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
personForm: TpersonForm;
implementation
uses
datamodel;
{$R *.dfm}
procedure TpersonForm.DBGrid1CellClick(Column: TColumn);
begin
with datamodule1.personTable do
begin
bsSkinEdit1.Text:=fieldByname('persionID').AsString;
bsSkinEdit2.Text:=fieldByname('Pname').AsString;
bsSkinEdit3.Text:=fieldByname('unit').AsString;
bsSkinEdit4.Text:=fieldByname('business').AsString;
bsSkinEdit5.Text:=fieldByname('tel').AsString;
end;
end;
{procedure TpersonForm.bsSkinButton2Click(Sender: TObject);
begin
if bsSkinEdit1.Text='' then
begin
MessageDlg('人员编号不能为空!',mtError,[mbok],0);
bsSkinEdit1.SetFocus;
exit;
end;
with datamodule1.personQuery do
begin
close;
sql.Clear;
sql.Add('select * from personMIs where persionID=:a');
Parameters[0].Value:=bsSkinEdit1.Text;
open;
end;
if datamodule1.personQuery.eof then
begin
with datamodule1.personTable do
begin
append;
fieldbyname('persionID').AsString:=bsSkinEdit1.Text;
fieldByname('Pname').AsString:=bsSkinEdit2.Text;
fieldByname('unit').AsString:=bsSkinEdit3.Text;
fieldByname('business').AsString:=bsSkinEdit4.Text;
fieldByname('tel').AsString:=bsSkinEdit5.Text;
post;
end;
end
else
begin
MessageDlg('人员编号不能重复,请重新输入!',mtError,[mbok],0);
bsSkinEdit1.Text:='' ;
bsSkinEdit1.SetFocus;
end;
bsSkinEdit1.Text:='';
bsSkinEdit2.Text:='';
bsSkinEdit3.Text:='';
bsSkinEdit4.Text:='';
bsSkinEdit5.Text:='';
bsSkinEdit1.Enabled:=false; //编号不能修改
end; }
procedure TpersonForm.bsSkinButton5Click(Sender: TObject);
begin
close;
end;
procedure TpersonForm.bsSkinButton3Click(Sender: TObject);
begin
with datamodule1.personTable do
begin
delete;
bsSkinEdit1.Text:='';
bsSkinEdit2.Text:='';
bsSkinEdit3.Text:='';
bsSkinEdit4.Text:='';
bsSkinEdit5.Text:='';
end;
end;
procedure TpersonForm.bsSkinButton4Click(Sender: TObject);
begin
if bsSkinEdit1.Text='' then
begin
showmessage('人员编号不能为空');
bsSkinEdit2.SetFocus;
exit;
end;
{ with datamodule1.personQuery do
begin
close;
sql.Clear;
sql.Add('select * from personMIs where persionID=:a');
Parameters[0].Value:=bsSkinEdit1.Text;
open;
end;}
// if datamodule1.personQuery.eof then
//begin
with datamodule1.personTable do
begin
edit;
fieldbyname('persionID').AsString:=bsSkinEdit1.Text;
fieldByname('Pname').AsString:=bsSkinEdit2.Text;
fieldByname('unit').AsString:=bsSkinEdit3.Text;
fieldByname('business').AsString:=bsSkinEdit4.Text;
fieldByname('tel').AsString:=bsSkinEdit5.Text;
post;
end;
{ end
else
begin
MessageDlg('人员编号不能重复,请重新输入!',mtError,[mbok],0);
end; }
end;
procedure TpersonForm.FormShow(Sender: TObject);
begin
//******连接数据库******
bsSkinEdit1.Enabled:=false; //编号不能修改
bsSkinDBGrid1.Columns[0].Visible:=false;
datamodule1.personConnection.Connected:=true;
datamodule1.personTable.Open;
end;
//*********改变静态列值********//
procedure TpersonForm.bsSkinDBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TbsColumn;
State: TGridDrawState);
var i :integer;
begin
bsSkinDBGrid1.Columns[0].Visible:=false;
for i :=0 to (Sender as TbsSkinDBGrid).Columns.Count-1 do
begin
case i of
1: (Sender as TbsSkinDBGrid).Columns[i].Title.Caption :='人员编号';
2: (Sender as TbsSkinDBGrid).Columns[i].Title.Caption :='姓名';
3: (Sender as TbsSkinDBGrid).Columns[i].Title.Caption :='联系电话';
4: (Sender as TbsSkinDBGrid).Columns[i].Title.Caption :='单位';
5: (Sender as TbsSkinDBGrid).Columns[i].Title.Caption :='职务';
end;
bsSkinDBGrid1.Columns[1].Width:=120;
bsSkinDBGrid1.Columns[2].Width:=120;
bsSkinDBGrid1.Columns[3].Width:=140;
bsSkinDBGrid1.Columns[4].Width:=140;
bsSkinDBGrid1.Columns[5].Width:=140;
end;
end;
///****选择一条记录*********
procedure TpersonForm.bsSkinDBGrid1CellClick(Column: TbsColumn);
begin
with datamodule1.personTable do
begin
bsSkinEdit1.Text:=fieldByname('persionID').AsString;
bsSkinEdit2.Text:=fieldByname('Pname').AsString;
bsSkinEdit5.Text:=fieldByname('tel').AsString;
bsSkinEdit3.Text:=fieldByname('unit').AsString;
bsSkinEdit4.Text:=fieldByname('business').AsString;
end;
end;
procedure TpersonForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.personConnection.Connected:=false;
end;
procedure TpersonForm.bsSkinDBGrid1TitleClick(Column: TbsColumn);
var
i:integer;
fieldname:string;
begin//排序
i:=Column.Index;
if bSort then
begin
fieldname:=bsSkinDBGrid1.Columns[i].FieldName+' ASC';
bSort:=False;
end
else
begin
fieldname:=bsSkinDBGrid1.Columns[i].FieldName+' DESC';
bSort:=True;
end;
datamodule1.personTable.Sort:=fieldName;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -