📄 unit8.pas
字号:
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, ComCtrls, StdCtrls, Buttons, ExtCtrls;
type
TF_bill = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Splitter1: TSplitter;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DateTimePicker1: TDateTimePicker;
Panel5: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton4: TSpeedButton;
Panel6: TPanel;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
Label5: TLabel;
Edit4: TEdit;
SpeedButton7: TSpeedButton;
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure Edit4Change(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F_bill: TF_bill;
change:boolean;
implementation
uses unit11, Unit7, Unit4, Unit6;
{$R *.dfm}
procedure TF_bill.SpeedButton1Click(Sender: TObject);
begin
edit3.Enabled:=true;
datetimepicker1.Enabled:=true;
speedbutton1.Enabled:=false;
speedbutton2.Enabled:=false;
change:=false;
bitbtn2.Enabled:=true;
bitbtn1.Enabled:=true;
end;
procedure TF_bill.BitBtn1Click(Sender: TObject);
begin
Edit1.Clear;
edit2.Clear;
Edit3.Clear;
datetimepicker1.Date;
edit1.Enabled:=false;
Edit2.Enabled:=false;
Edit3.Enabled:=false;
datetimepicker1.Enabled:=false ;
speedbutton1.Enabled:=true;
speedbutton2.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=false;
change:=False;
end;
procedure TF_bill.BitBtn2Click(Sender: TObject);
begin
if ((edit1.text<>'') and (edit2.Text<>'') and (edit3.Text<>'') ) then
begin
if change=true then mydm.Billsrc.DataSet.Delete;
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('insert into bill values(:p0,:p1,:p2,:p3)');
end;
parameters[0].Value:=Trim(edit1.Text);
parameters[1].Value:=Trim(edit2.Text);
parameters[2].Value:=Trim(edit3.Text);
parameters[3].value:=datetimepicker1.date;
execsql;
end;
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('select*from bill');
end;
open;
F_customer.guo:=(strtoint(trim(Mydm.guosrc.DataSet.FieldByName('saveguo').AsString)));
Inc(F_customer.guo);
Mydm.guo.Edit;
if change<>true then
Mydm.guosrc.DataSet.FieldByName('saveguo').AsString:=Trim(inttostr(F_customer.guo));
MYdm.guo.Post;
change:=false;
bitbtn1.Click;
end;
end
else
begin
Application.MessageBox('输入必要信息。','提示',64);
exit;
end;
bitbtn2.Enabled:=False;
bitbtn1.Enabled:=False;
speedbutton1.Enabled:=True;
speedbutton2.Enabled:=True;
speedbutton6.Enabled:=True
end;
procedure TF_bill.SpeedButton2Click(Sender: TObject);
begin
if mydm.billQuery.RecordCount=0 then
Exit;
edit3.Enabled:=true;
datetimepicker1.Enabled:=true;
change:=true;
bitbtn1.Enabled:=true;
bitbtn2.Enabled:=true;
speedbutton1.Enabled:=false;
speedbutton2.Enabled:=false;
edit1.Text:=mydm.Billsrc.DataSet.Fields[0].AsString;
edit2.Text:=mydm.Billsrc.DataSet.Fields[1].AsString;
edit3.Text:=mydm.Billsrc.DataSet.Fields[2].AsString;
datetimepicker1.Date:=mydm.Billsrc.DataSet.Fields[3].AsDateTime;
end;
procedure TF_bill.SpeedButton4Click(Sender: TObject);
begin
Close;
end;
procedure TF_bill.FormShow(Sender: TObject);
begin
speedbutton5.Enabled:=False;
speedbutton6.Enabled:=False;
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('select*from bill');
end;
open;
end;
if edit3.Enabled=true then
edit3.SetFocus;
end;
procedure TF_bill.SpeedButton6Click(Sender: TObject);
begin
if (bitbtn2.Enabled=true) and ((Trim(MYdm.guosrc.DataSet.Fields[0].asstring)<>'0') and (Trim(MYdm.guosrc.DataSet.Fields[0].asstring)<>'5')) then
application.MessageBox('请提交或取消!','提示',mb_ok)
else
begin
if F_customer.punum<>'0' then
begin
F_policy.edit1.Text:=trim(F_customer.punum);
F_policy.Edit2.Text:=trim(F_customer.punum);
F_policy.Edit3.Text:=trim(F_customer.punum);
F_policy.Edit4.Text:=trim(F_customer.punum);
end;
if F_policy.Edit1.Text<>'' then
F_policy.button1.Click;
Hide;
F_policy.Show;
end;
end;
procedure TF_bill.SpeedButton5Click(Sender: TObject);
begin
Hide;
F_beneficiary.Show;;
end;
procedure TF_bill.SpeedButton7Click(Sender: TObject);
begin
with Mydm.billQuery do
begin
Close;
with SQL do
begin
Clear;
Add('select*from bill');
Add('where bill_id=:p');
end;
Parameters[0].Value:=trim(edit4.Text);
Prepared;
Open;
Speedbutton7.Enabled:=false;
end;
end;
procedure TF_bill.Edit4Change(Sender: TObject);
begin
Speedbutton7.Enabled:=true;
end;
procedure TF_bill.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',Chr(vk_Back),'.']) then
key:=#0;
end;
procedure TF_bill.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -