interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Fa_TEAJX_ADDS, cxGraphics, cxControls, cxLookAndFeels,
cxLookAndFeelPainters, cxContainer, cxEdit, dxSkinsCore,
dxSkinsDefaultPainters, cxStyles, dxSkinscxPCPainter, cxCustomData,
cxFilter, cxData, cxDataStorage, DB, cxDBData, cxDBExtLookupComboBox,
DBAccess, Uni, MemDS, StdCtrls, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxGridCustomView, cxGrid,
cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxMaskEdit, cxCalendar,
cxDBEdit, cxTextEdit, ExtCtrls;type
TF_CGTEA_ADD = class(TFa_TEAJX_ADD)
Edit1: TEdit;
Memo1: TMemo;
UniQuery_listSysTemID: TIntegerField;
UniQuery_listSPBM: TWideStringField;
UniQuery_listSPMC: TWideStringField;
UniQuery_listDJBM: TWideStringField;
UniQuery_listSPPZ: TWideStringField;
UniQuery_listSPCD: TWideStringField;
UniQuery_listCYXX: TWideStringField;
UniQuery_listSCJJ: TWideStringField;
UniQuery_listSPDJ: TCurrencyField;
UniQuery_listSPSL: TFloatField;
UniQuery_listSYSL: TFloatField;
UniQuery_listSPJE: TCurrencyField;
UniQuery_listSPGG: TWideStringField;
UniQuery_listRKRQ: TDateTimeField;
UniQuery_listCYMJ: TWideStringField;
UniQuery_listXSDJ: TCurrencyField;
UniQuery_listSPDW: TWideStringField;
UniQuery_listSPCR: TWideStringField;
UniQuery_listClaField: TBCDField;
cxGridDBTableView1ClaField: TcxGridDBColumn;
procedure FormShow(Sender: TObject);
procedure Button_addClick(Sender: TObject);
procedure cxGridDBTableView1EditKeyUp(Sender: TcxCustomGridTableView;
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit; var Key: Word;
Shift: TShiftState);
private
uniquery_spdw:TUniQuery;
unidatasource_spdw:TUniDataSource;
uniquery_spgg:TUniQuery;
unidatasource_spgg:TUniDataSource;
uniquery_cypz:TUniQuery;
unidatasource_cypz:TUniDataSource;
uniquery_cyjj:TUniQuery;
unidatasource_cyjj:TUniDataSource;
uniquery_cyxx:TUniQuery;
unidatasource_cyxx:TUniDataSource;
uniquery_cycd:TUniQuery;
unidatasource_cycd:TUniDataSource;
{ Private declarations }
public
{ Public declarations }
end;var
F_CGTEA_ADD: TF_CGTEA_ADD;
spdj,spsl,spje:Double;implementation
USES CxGridfun,Common;
{$R *.dfm}procedure TF_CGTEA_ADD.Button_addClick(Sender: TObject);
begin
inherited;
UniQuery_list.FieldByName('SPBM').Value:=GetMaxTableDateBH('CR_SPCG');
spdj :=0;
spsl :=0;
end;procedure TF_CGTEA_ADD.cxGridDBTableView1EditKeyUp(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
AEdit: TcxCustomEdit; var Key: Word; Shift: TShiftState);
begin
inherited;
if Tcxmaskedit(AEdit).text = '' then exit;
if AItem.Index =9 then spdj := StrToFloat(TcxTextEdit(AEdit).text);
if AItem.Index =10 then spsl := StrToFloat(TcxTextEdit(AEdit).text);
if (spdj <> 0) and (spsl <> 0) then
begin
Sender.datacontroller.setvalue(0,11,FloatToStr(spdj * spsl)); //这是一个计算方法,当在 spdj或spsl中输入值时
自动计算当前的值并修改SPJE的值,但是当在修改的时候,spdj 或 spsl 的显示值又变为空,而 spje 的值又没有错,请问这是什么原因,而在下面的方法显示计算值又没有问题?
Edit1.Text := FloatToStr(spdj * spsl);
end;
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Fa_TEAJX_ADDS, cxGraphics, cxControls, cxLookAndFeels,
cxLookAndFeelPainters, cxContainer, cxEdit, dxSkinsCore,
dxSkinsDefaultPainters, cxStyles, dxSkinscxPCPainter, cxCustomData,
cxFilter, cxData, cxDataStorage, DB, cxDBData, cxDBExtLookupComboBox,
DBAccess, Uni, MemDS, StdCtrls, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxGridCustomView, cxGrid,
cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxMaskEdit, cxCalendar,
cxDBEdit, cxTextEdit, ExtCtrls;type
TF_CGTEA_ADD = class(TFa_TEAJX_ADD)
Edit1: TEdit;
Memo1: TMemo;
UniQuery_listSysTemID: TIntegerField;
UniQuery_listSPBM: TWideStringField;
UniQuery_listSPMC: TWideStringField;
UniQuery_listDJBM: TWideStringField;
UniQuery_listSPPZ: TWideStringField;
UniQuery_listSPCD: TWideStringField;
UniQuery_listCYXX: TWideStringField;
UniQuery_listSCJJ: TWideStringField;
UniQuery_listSPDJ: TCurrencyField;
UniQuery_listSPSL: TFloatField;
UniQuery_listSYSL: TFloatField;
UniQuery_listSPJE: TCurrencyField;
UniQuery_listSPGG: TWideStringField;
UniQuery_listRKRQ: TDateTimeField;
UniQuery_listCYMJ: TWideStringField;
UniQuery_listXSDJ: TCurrencyField;
UniQuery_listSPDW: TWideStringField;
UniQuery_listSPCR: TWideStringField;
UniQuery_listClaField: TBCDField;
cxGridDBTableView1ClaField: TcxGridDBColumn;
procedure FormShow(Sender: TObject);
procedure Button_addClick(Sender: TObject);
procedure cxGridDBTableView1EditKeyUp(Sender: TcxCustomGridTableView;
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit; var Key: Word;
Shift: TShiftState);
private
uniquery_spdw:TUniQuery;
unidatasource_spdw:TUniDataSource;
uniquery_spgg:TUniQuery;
unidatasource_spgg:TUniDataSource;
uniquery_cypz:TUniQuery;
unidatasource_cypz:TUniDataSource;
uniquery_cyjj:TUniQuery;
unidatasource_cyjj:TUniDataSource;
uniquery_cyxx:TUniQuery;
unidatasource_cyxx:TUniDataSource;
uniquery_cycd:TUniQuery;
unidatasource_cycd:TUniDataSource;
{ Private declarations }
public
{ Public declarations }
end;var
F_CGTEA_ADD: TF_CGTEA_ADD;
spdj,spsl,spje:Double;implementation
USES CxGridfun,Common;
{$R *.dfm}procedure TF_CGTEA_ADD.Button_addClick(Sender: TObject);
begin
inherited;
UniQuery_list.FieldByName('SPBM').Value:=GetMaxTableDateBH('CR_SPCG');
spdj :=0;
spsl :=0;
end;procedure TF_CGTEA_ADD.cxGridDBTableView1EditKeyUp(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
AEdit: TcxCustomEdit; var Key: Word; Shift: TShiftState);
begin
inherited;
if Tcxmaskedit(AEdit).text = '' then exit;
if AItem.Index =9 then spdj := StrToFloat(TcxTextEdit(AEdit).text);
if AItem.Index =10 then spsl := StrToFloat(TcxTextEdit(AEdit).text);
if (spdj <> 0) and (spsl <> 0) then
begin
Sender.datacontroller.setvalue(0,11,FloatToStr(spdj * spsl)); //这是一个计算方法,当在 spdj或spsl中输入值时
自动计算当前的值并修改SPJE的值,但是当在修改的时候,spdj 或 spsl 的显示值又变为空,而 spje 的值又没有错,请问这是什么原因,而在下面的方法显示计算值又没有问题?
Edit1.Text := FloatToStr(spdj * spsl);
end;
end;
解决方案 »
- 生日。老衲25岁了。唉,老了。小小的散分。
- 一个小问题:急救!
- delphi+oracle问题,用了事务后速度明显慢了.
- 在线等----------先谢谢了
- 关于TChart控件的问题
- 为什么原来在win2000上能安装的控件,现在XP下却安装不了了...在线等待
- Delphi7.0+Office2003+winXP,无法调用EXCEl!
- delphi中奇怪的方法未重载错误提示
- 关联表的语句错误,帮忙看一下啊
- 菜鸟请求帮忙:在Delphi的DBGrid中,如何方便用户的日期字段的输入及输入后的有效性检查??
- delphi 如何用 ocx 开发 图片识别
- TcxComboBoxProperties
Sender.datacontroller.Post不过好像放在这里事件里确实怪怪的。