DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: diga
今日帖子: 27
在线用户: 12
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 89205149 (浪子) ★☆☆☆☆ -
普通会员
2004/3/10 13:19:04
标题:
大小写金额转换问题! 浏览:1373
加入我的收藏
楼主:   现有个大小写金额转换涵数NtoC,在窗体上有DBEDIT1,DBEDIT2,DBEDIT1关联数据库(ACCESS)的小写金额字段,DBEDIT2关联数据库的大写金额字段,想在小写金额输入后DBEDIT2自动转换应该如何做?
----------------------------------------------
-
作者:
男 89205149 (浪子) ★☆☆☆☆ -
普通会员
2004/3/10 16:58:13
1楼: 这问题是不是好难啊?各位大侠帮帮忙啊
----------------------------------------------
-
作者:
男 iamdream (银河恒久远,梦想无止境!) ★☆☆☆☆ -
大贡献会员
2004/3/10 18:08:03
2楼: 你可以在DBEdit1的键盘事件如KeyDown中拦截回车键,然后改变DBEdit2的值。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
作者:
男 waterstone (waterstone) ★☆☆☆☆ -
盒子活跃会员
2004/3/10 18:14:29
3楼: 给:
function Tform1.SmallTOBig(small:real):string;
var SmallMonth,BigMonth:string;
wei1,qianwei1:string[2];
wei,qianwei,dianweizhi,qian:integer;
begin
{------- 修改参数令值更精确 -------}
{小数点后的位数,需要的话也可以改动该值}
qianwei:=-2;

{转换成货币形式,需要的话小数点后加多几个零}
Smallmonth:=formatfloat('0.00',small);
{---------------------------------}

dianweizhi :=pos('.',Smallmonth);{小数点的位置}

{循环小写货币的每一位,从小写的右边位置到左边}
for qian:=length(Smallmonth) downto 1 do
begin
{如果读到的不是小数点就继续} 
if qian<>dianweizhi then
begin

{位置上的数转换成大写}
case strtoint(copy(Smallmonth,qian,1)) of

1:wei1:='壹'; 2:wei1:='贰';
3:wei1:='叁'; 4:wei1:='肆';
5:wei1:='伍'; 6:wei1:='陆';
7:wei1:='柒'; 8:wei1:='捌';
9:wei1:='玖'; 0:wei1:='零';
end;

{判断大写位置,可以继续增大到real类型的最大值,可是谁有那么多钱}
case qianwei of
-3:qianwei1:='厘';
-2:qianwei1:='分';
-1:qianwei1:='角';
0 :qianwei1:='元';
1 :qianwei1:='拾';
2 :qianwei1:='佰';
3 :qianwei1:='千';
4 :qianwei1:='万';
5 :qianwei1:='拾';
6 :qianwei1:='佰';
7 :qianwei1:='千';
8 :qianwei1:='亿';
9 :qianwei1:='十';
10:qianwei1:='佰';
11:qianwei1:='千';
end;

inc(qianwei);
BigMonth :=wei1+qianwei1+BigMonth;{组合成大写金额}
end;

end;

SmallTOBig:=BigMonth;

end;

程序调用如下“edit1.text:=SmallTOBig(1234567890.1234);”他自动默认小数点后两位


----------------------------------------------
我来自农村广阔的田野我的每一个动作都很夸张http://waterstone.51r.com
作者:
男 waterstone (waterstone) ★☆☆☆☆ -
盒子活跃会员
2004/3/10 18:25:43
4楼: 声明:来自《葵花宝典2.7》,非本人原创
浪子,挣了钱可要分呀!


----------------------------------------------
我来自农村广阔的田野我的每一个动作都很夸张http://waterstone.51r.com
作者:
男 89205149 (浪子) ★☆☆☆☆ -
普通会员
2004/3/11 9:17:59
5楼: 像我这样还没入门哪能谈挣钱啊,还有个问题就是我用的是DBEDIT1,DBEDIT2如何调用啊
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行74.21875毫秒 RSS