风
风中的狼
Unregistered / Unconfirmed
GUEST, unregistred user!
在程序设计时遇到的问题:
用户经常会输入1/3之类的数据,并要对数据进行计算。
如Edit1中输入单价,Edit2中输入数量。
如果数量为整数或小数,那很好计算,只要在Edit3的OnEnetr事件中输入:
Var
S:String;
Begin
Str(StrToFloat(Edit1.Text)*StrToFloat(Edit2.Text):10:2,S);
Edit3.Text:=S;
End;
但象1/3这样的文本是不能通过StrToFloat转换的。
我想应该是将Edit2中的内容读入一个字符串,再判断其中有没有“/”
如果有再分别取出“/”前后的内容,然后运算得出一个小数再进行运算。
这只是我的理解,因为我没有使用过字符串操作,所以我现在不知该怎么办好!
大家有什么好的方法,请告诉我,谢谢!
用户经常会输入1/3之类的数据,并要对数据进行计算。
如Edit1中输入单价,Edit2中输入数量。
如果数量为整数或小数,那很好计算,只要在Edit3的OnEnetr事件中输入:
Var
S:String;
Begin
Str(StrToFloat(Edit1.Text)*StrToFloat(Edit2.Text):10:2,S);
Edit3.Text:=S;
End;
但象1/3这样的文本是不能通过StrToFloat转换的。
我想应该是将Edit2中的内容读入一个字符串,再判断其中有没有“/”
如果有再分别取出“/”前后的内容,然后运算得出一个小数再进行运算。
这只是我的理解,因为我没有使用过字符串操作,所以我现在不知该怎么办好!
大家有什么好的方法,请告诉我,谢谢!