| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2918 人关注过本帖
标题:计算器——小数点右边不能输入数字?!
只看楼主 加入收藏
一刀客
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-10-26
收藏
 问题点数:0 回复次数:4 
计算器——小数点右边不能输入数字?!
小数点右边不能输入数字!!!!!!!
我用panel来显示运算结果,刚刚开始学Delphi,还不懂得如何写代码让Edit.text右对齐,只好用panel了。
==================================
图片附件: 游客没有浏览图片的权限,请 登录注册

==================================
定义了三个全局变量:
  xsd:boolean=true;//xsd是小数点的意思,默认是没有点击小数点,设为true。当点击小数点的时候,其值为 false
  y:string;
  m:integer;
当按下“1”的时候,代码如下
if xsd then
   if panel1.Caption='0.' then
      panel1.Caption:='1.'
   else
      if panel1.Caption<>'0.' then
         begin
            y:=panel1.Caption;
            m:=length(y);
            setlength(y,m-1);
            panel1.Caption:=y+'1'+'.'
         end
else
  if xsd=false then //问题应该在这里了,但我不知道错在哪里!
    begin
      y:=panel1.Caption;
      panel1.Caption:=y+'1'
    end;

end;
如何写代码让Edit.text右对齐?大家帮帮忙吧!
搜索更多相关主题的帖子: 计算器 小数点 数字 xsd panel 
2008-03-12 21:25
keneth
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-20
收藏
得分:0 
基本上就是这样了,除了一些begin end ;少了之处应该没什么了。
如果不能出数字,看一下你的小数点你是怎么处理的。

按照你的思路,你要在FormCreate事件里把xsd:=true
然后按小数点就触发xsd:=false
2008-03-21 17:34
keneth
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-20
收藏
得分:0 
Edit.text的右对齐我也不会,希望哪个高手指点一下。

还有就是你这个数字键的输入还有一个问题,就是当计算之后(比如经过+计算),你再按数字,应该做一个清零处理,否则再按的数字又会接着算出来的结果。
2008-03-21 17:46
zhoukai
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-4-11
收藏
得分:0 
对齐问题
在Delphi中edit控件的限制很多。如不能换行,当然也不能右对齐,但是我们可以用memo来解决右对齐的问题。memo1.Alignment := taRightJustify;希望对你有所帮助;
2008-04-16 09:53
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
收藏
得分:0 
如果是我来处理的话, 我不会把小数点与数字放在一起, 而只是记一下有几个数字是在小数点右边的.
2008-04-16 10:14
快速回复:计算器——小数点右边不能输入数字?!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012069 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved