delphi里的edit框中如何让数字从右往左输入啊

我做的是一个计算器小软件... 我做的是一个计算器小软件 展开
 我来答
就烦条0o
2016-02-01 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部

EDIT本身没有这个功能,可以变通一点,设置edit右对齐,然后每次输入后把光标移动到最左则,然后通过KeyPress控制只允许输出数字,代码如下:

procedure TForm1.FormCreate(Sender: TObject);
var
  chargerstyle:integer;
begin
  chargerstyle:=GetWindowLong(remark.Handle,GWL_STYLE);
  chargerstyle:=chargerstyle and(not ES_LEFT)and(not ES_CENTER)or ES_RIGHT;
  SetWindowLong(remark.Handle,GWL_STYLE,chargerstyle);
end;

procedure TForm1.remarkKeyPress(Sender: TObject; var Key: Char);
begin
  if not(key  in['0'..'9',#8]) then  begin
    key:=#0;
  end;
end;

procedure TForm1.remarkChange(Sender: TObject);
begin
  remark.SelStart:=0;
end;

效果如下:

景德镇生活通
2014-11-25 · TA获得超过288个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:159万
展开全部
程序TForm1.Edit1KeyPress(发件人:TObject的; VAR键:夏亚);
开始
如果['一'..'Z','A'..'Z'],然后
应用的关键。的MessageBox('信','提示',MB_OK);
如果key> CHAR(128),然后
application.MessageBox('人物','提示',MB_OK);

末;
追问
并不能懂啊。。求详细点!谢谢
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式