通常都是设置你需要设置字段的displayformat:#,##0.00,
但是一个软件系统里面有很多窗口,要是一个一个的设置会很麻烦.
有没有什么办法直接判断当前窗口中的adoquery或者dbgrideh中的字段属性,
如果字段属性是数值型,则统一设置displayformat:=#,##0.00
请教各位高手,谢谢.
但是一个软件系统里面有很多窗口,要是一个一个的设置会很麻烦.
有没有什么办法直接判断当前窗口中的adoquery或者dbgrideh中的字段属性,
如果字段属性是数值型,则统一设置displayformat:=#,##0.00
请教各位高手,谢谢.
解决方案 »
- SQL语句错误在哪里?
- 怎样截获操作系统的打印消息?急急急
- ◆如何实现多列的TreeView
- listbox新手问题请教?
- 请教怎么生成条码
- Delphi中用adoquery连接Access数据库时,怎样设置连接密码或用什么方法连接???
- 在Delphi5中怎么实现串口通讯
- 如何屏蔽键盘中的字母键
- 巨简单问题:那个 tabcontrol(好象是 pagecontrol) 怎么用?好象我放了一个在 窗口上,然后在那个 tabcontrol(好象是 pagecontrol) 上放一个按钮,结果每一页都有?
- dpk控件怎样加进delphi的?
- delphi7 ado使用 oracle驱动的问题
- 请问如何简单(尽量用最少的代码)获得自己的网络是内网还是外网?
下面的事件是写在一个基类的DBGridEh的事件里面
子类继承的话 都会有这个转换 就不要到处写
像你这个情况 可以在公共单元里面写一个事件
然后每个要引用的窗口 将事件指向这里 就实现了代码共享procedure TMDIBaseForm.dbgMDIGetFooterParams(Sender: TObject; DataCol,
Row: Integer; Column: TColumnEh; AFont: TFont; var Background: TColor;
var Alignment: TAlignment; State: TGridDrawState; var Text: string);
begin
//显示的格式统一 if Column.Footer.ValueType = fvtSum then
begin
try
if Text = '' then
begin
Text := '0.00';
end
else
begin
Text := FormatCurr('#,##0.00', StrToCurr(Text));
end;
except
Text := '0.00';
end
end; if Column.Footer.ValueType = fvtCount then
begin
Text := '记录数: ' + Text;
end;
end;
大侠,本人水平实在是有限,能否给各小例子?
分数我再给你加.谢谢.