ujyxx_ed.~pas
来自「很好的汽车管理系统 很实用的 谢谢合作」· ~PAS 代码 · 共 774 行 · 第 1/2 页
~PAS
774 行
{※-------------※--------------※-------------※--------------※--------------※
★★ 版权说明:吉林省明日科技有限公司享有本软件的所有版权,如果本软件用于商业
用途,必须经过吉林省明日科技有限公司授权。如果提供网上免费下载,必须经过吉林省
明日科技有限公司授权,并保证程序的完整(不得修改代码、注释和相关内容),否则,
我公司将追究其法律责任。
★★《Delphi编程词典》软件是由吉林省明日科技有限公司开发的面向程序员和编程爱好
者的技术最全、案例最多和使用最方便的Delphi编程技术词典。它包含30个实际项目的开
发过程和源码(每月新增加一个实际开发项目源码);最完整、最全面、最实用的函数、
控件和基础技术大全;上千个编程技巧和几百个典型实例;同时还提供了编程中所需的各
种素材和资源。价值无限,服务无限。技术服务及升级请访问www.cccxy.com
★★《Delphi编程词典》是各级编程人员不可缺少的编程技术资源管理软件。如果您是初
学者,本软件提供了大量实例、项目的源码及其详尽、完整的开发过程文档和技术说明文
件,同时还配有各方面的学习录像,让您快速入门,快速精通;如果您是编程设计高手,
本软件提供了大量编程技巧、源码速查和全方位的技术资源,让您轻松编程、轻松赚钱。
★★《Delphi编程词典》软件是软件开发商和软件服务商的资源宝库,它提供了几十个实
际项目案例的项目源码、软件升级和有限服务支持,同时每月还提供新的行业软件,让您
用最好、最多的软件资源开拓您的软件市场,创造更多的利润空间。价值无限,服务无限。
技术服务及升级请访问www.cccxy.com
★★《Delphi编程词典》对所有源码项目的实例的开发过程和代码功能都作了详细说明,
让您真正融会贯通,迅速提高编程本领。
★★如果您在使用《Delphi编程词典》中有疑问或好的建议,请访问我公司"编程词典"技
术服务网站www.cccxy.com或拨打我公司电话(0431-4978981,4978982),我们愿为广大
编程者提供最好的产品和最佳的服务。对于提出好的建议的读者,我们将给与奖励,
详情请访问www.cccxy.com。
★★吉林省明日科技有限公司 www.mingrisoft.com www.cccxy.com 价值无限,服务无
限(0431)4978981,4978982
※-------------※--------------※-------------※--------------※--------------※}
{※-------------※--------------※加油信息编辑窗体※--------------※------------※
实现目标: 车辆加油详细信息的录入
设计思路: 根据车辆行驶公里数,对车辆加油
※-------------※--------------※加油信息编辑窗体※--------------※------------※}
unit UJYXX_ED;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, ComCtrls;
type
TJYXX_ED = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Label6: TLabel;
Edit5: TEdit;
Edit6: TEdit;
Label7: TLabel;
Label8: TLabel;
Edit7: TEdit;
Edit8: TEdit;
Label9: TLabel;
Label10: TLabel;
Edit10: TEdit;
Label11: TLabel;
Memo1: TMemo;
Label12: TLabel;
Edit11: TEdit;
DateTimePicker1: TDateTimePicker;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
procedure SpeedButton5Click(Sender: TObject);
procedure DateTimePicker1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
procedure Edit6KeyPress(Sender: TObject; var Key: Char);
procedure Edit9KeyPress(Sender: TObject; var Key: Char);
procedure Edit10KeyPress(Sender: TObject; var Key: Char);
procedure Edit2Change(Sender: TObject);
procedure Edit5Change(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure Edit7Change(Sender: TObject);
procedure Edit10Change(Sender: TObject);
procedure Memo1Change(Sender: TObject);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure DateTimePicker1KeyPress(Sender: TObject; var Key: Char);
procedure Edit5Exit(Sender: TObject);
procedure Edit6Exit(Sender: TObject);
procedure ComboBox1DropDown(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox2DropDown(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
procedure BH;
function cansave:boolean;
procedure GetAll;
procedure Posting;
procedure ENA;
procedure DIS;
procedure CLS;
procedure tr;
{ Public declarations }
end;
var
JYXX_ED: TJYXX_ED;
implementation
uses UMain, UDM, UJYXX, ADODB;
{$R *.dfm}
{※--------※--------※--------※--------※--------※--------※--------※--------※
★★《Delphi编程词典》软件是由吉林省明日科技有限公司开发的面向程序员和编程爱好者
的技术最全、案例最多和使用最方便的Delphi编程技术词典。它包含30个实际项目的开发过
程和源码(每月新增加一个实际开发项目);最完整、最全面、最实用的函数、控件和基础
技术大全;上千个编程技巧和几百个典型实例;同时还提供了编程中所需的各种素材和资源。
价值无限,服务无限。技术服务及升级请访问www.cccxy.com , 电话:(0431)4978981,49
78982
★★《Delphi编程词典》软件源码项目部分对所有代码都作了详细的注释和说明,同时提供
了所有源码项目详尽、完整的开发过程文档和录像。技术支持及升级请访问www.cccxy.com
电话:(0431)4978981,4978982
★★《Delphi编程词典》对所有实例的开发过程和设计思路都作了详细的介绍。技术支持及
升级请访问www.cccxy.com 电话:(0431)4978981,4978982
★★如果您在使用《Delphi编程词典》中有疑问或好的建议,请访问我公司"编程词典"技术
服务网站www.cccxy.com或拨打我公司电话(0431-4978981,4978982),我们愿为广大编程
者提供最好的产品和最佳的服务。对于提出好的建议的读者,我们将给与奖励,详情请访问
www.cccxy.com。电话:(0431)4978981,4978982
※--------※--------※--------※--------※--------※--------※--------※--------※}
procedure TJYXX_ED.tr;
var
i:integer;
begin
for i:=ComponentCount - 1 downto 0 do
if(Components[i] is TEdit) then
TEdit(Components[i]).Text:=trim(TEdit(Components[i]).Text);
end;
procedure TJYXX_ED.BH;
var
s,m:string;
begin
with DM.QJYXX do
begin
Close;
SQL.Clear;
SQL.Add('Select max(bh) as 编号 From JYXX');
Open;
end;
if DM.ADODSJYXX.FieldByName('bh').Value=null then
s:=s+'1'
else
begin
DM.ADODSJYXX.Last;
m:=Trim(DM.ADODSJYXX.Fieldbyname('bh').Value);
s:=inttostr(strtoint(m)+1);
end;
edit1.Text:=s;
end;
{※--------※--------※--------※--------※--------※--------※--------※--------※
★★关于本函数的详细说明或实例参见《Delphi编程词典》软件函数应用部分,该部分对所
有函数都有详细语法说明和最实用的应用实例。
★★吉林省明日科技有限公司愿为您提供最实用、最全面、最完整和最方便的编程技术和开
发资源,同时为您提供最周到的技术支持和服务。
★★技术支持及升级请访问www.cccxy.com www.mingrisoft.com 价值无限,服务无限
※--------※--------※--------※--------※--------※--------※--------※--------※}
function TJYXX_ED.CanSave: Boolean;//判断是否保存
begin
if (Edit1.Text='') then
begin
Result:=False;
Application.MessageBox('编号不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (ComboBox1.Text='') then
begin
Result:=False;
Application.MessageBox('车牌号不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit5.Text='') then
begin
Result:=False;
Application.MessageBox('单价不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit6.Text='') then
begin
Result:=False;
Application.MessageBox('加油量不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit7.Text='') then
begin
Result:=False;
Application.MessageBox('金额不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit8.Text='') then
begin
Result:=False;
Application.MessageBox('请选择加油日期!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit10.Text='') then
begin
Result:=False;
Application.MessageBox('经办人不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (ComboBox2.Text='') then
begin
Result:=False;
Application.MessageBox('油站名称不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit10.Text='') then
begin
Result:=False;
Application.MessageBox('油站地址不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
end;
{※--------※--------※--------※--------※--------※--------※--------※--------※
★★关于本函数的详细说明或实例参见《Delphi编程词典》基础知识部分,该部分对所有对
象都有详细语法说明和最实用的应用实例。
★★吉林省明日科技有限公司愿为您提供最实用、最全面、最完整和最方便的编程技术和开
发资源,同时为您提供最周到的技术支持和服务。
★★技术支持及升级请访问www.cccxy.com www.mingrisoft.com 价值无限,服务无限
※--------※--------※--------※--------※--------※--------※--------※--------※}
procedure TJYXX_ED.GetAll;
begin
Edit1.Text:=DM.ADODSJYXX.FieldByName('bh').AsString;
ComboBox1.Text:=DM.ADODSJYXX.FieldByName('cph').AsString;
Edit3.Text:=DM.ADODSJYXX.FieldByName('clmc').AsString;
Edit4.Text:=DM.ADODSJYXX.FieldByName('rylx').AsString;
Edit5.Text:=DM.ADODSJYXX.fieldByName('dj').AsString;
Edit6.Text:=DM.ADODSJYXX.FieldByName('jyl').AsString;
Edit7.Text:=DM.ADODSJYXX.FieldByName('je').AsString;
Edit8.Text:=DM.ADODSJYXX.FieldByName('jyrq').AsString;
ComboBox2.Text:=DM.ADODSJYXX.FieldByName('yzmc').AsString;
Edit10.Text:=DM.ADODSJYXX.FieldByName('jbr').AsString;
Edit11.Text:=DM.ADODSJYXX.FieldByName('yzdz').AsString;
Memo1.Text:=DM.ADODSJYXX.FieldByName('bz').AsString;
end;
{※--------※--------※--------※--------※--------※--------※--------※--------※
★★关于本函数的详细说明或实例参见《Delphi编程词典》基础知识部分,该部分对所有对
象都有详细语法说明和最实用的应用实例。
★★吉林省明日科技有限公司愿为您提供最实用、最全面、最完整和最方便的编程技术和开
发资源,同时为您提供最周到的技术支持和服务。
★★技术支持及升级请访问www.cccxy.com www.mingrisoft.com 价值无限,服务无限
※--------※--------※--------※--------※--------※--------※--------※--------※}
procedure TJYXX_ED.Posting;
begin
if ActionCD='N' then
BEGIN
with DM.QJYXX do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO JYXX(cph,clmc,rylx,dj,jyl,je,jyrq,jbr,yzmc,yzdz,bz,bh)');
SQL.Add('Values(:车牌号,:车辆名称,:燃油类型,:单价,:加油量,:金额,:加油日期,:经办人,:油站名称,:油站地址,:备注,:编号)');
Parameters.Items[0].Value:=ComboBox1.Text;
Parameters.Items[1].Value:=Edit3.Text;
Parameters.Items[2].Value:=Edit4.Text;
Parameters.Items[3].Value:=Edit5.Text;
Parameters.Items[4].Value:=Edit6.Text;
Parameters.Items[5].Value:=Edit7.Text;
Parameters.Items[6].Value:=Edit8.Text;
Parameters.Items[7].Value:=Edit10.Text;
Parameters.Items[8].Value:=ComboBox2.Text;
Parameters.Items[9].Value:=Edit11.Text;
Parameters.Items[10].Value:=Memo1.Text;
Parameters.Items[11].Value:=Edit1.Text;
Prepared:=True;
ExecSQL;
end;
END else
if ActionCD='M' then
begin
With DM.QJYXX DO
begin
Close;
SQL.Clear;
SQL.Add('update JYXX Set cph=:车牌号,');
SQL.Add('clmc=:车辆名称,rylx=:燃油类型,dj=:单价,jyl=:加油量,');
SQL.Add('je=:金额,jyrq=:加油日期,jbr=:经办人,yzmc=:油站名称,');
SQL.Add('yzdz=:油站地址,bz=:备注 Where bh=:编号');
Parameters.Items[0].Value:=ComboBox1.Text;
Parameters.Items[1].Value:=Edit3.Text;
Parameters.Items[2].Value:=Edit4.Text;
Parameters.Items[3].Value:=Edit5.Text;
Parameters.Items[4].Value:=Edit6.Text;
Parameters.Items[5].Value:=Edit7.Text;
Parameters.Items[6].Value:=Edit8.Text;
Parameters.Items[7].Value:=Edit10.Text;
Parameters.Items[8].Value:=ComboBox2.Text;
Parameters.Items[9].Value:=Edit11.Text;
Parameters.Items[10].Value:=Memo1.Text;
Parameters.Items[11].Value:=DM.ADODSJYXX.FieldByName('bh').AsString;
Prepared:=true;
ExecSQL;
end;
end;
end;
procedure TJYXX_ED.ENA;
var
i:integer;
begin
for i:=ComponentCount-1 downto 0 do
begin
if (Components[i] is TEdit) then
begin
TEdit(Components[i]).Color:=clWindow;
TEdit(Components[i]).ReadOnly:=False;
end;
if (Components[i] is TDateTimePicker)then
begin
TDateTimePicker(Components[i]).Color:=clWindow;
TDateTimePicker(Components[i]).Enabled:=true;
end;
end;
ComboBox1.Color:=clWindow;
ComboBox1.Enabled:=True;
ComboBox2.Color:=clWindow;
ComboBox2.Enabled:=True;
Memo1.Color := clWindow;
Memo1.ReadOnly := False;
SpeedButton1.Enabled:=False;
SpeedButton2.Enabled:=False;
SpeedButton3.Enabled:=True;
SpeedButton4.Enabled:=True;
Panel1.Enabled:=True;
end;
procedure TJYXX_ED.DIS;
var
i:integer;
begin
for i:=ComponentCount-1 downto 0 do
begin
if (Components[i] is Tedit) then
begin
TEdit(Components[i]).Color:=$00d8d8d8;
TEdit(Components[i]).ReadOnly:=true;
end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?