procedure TForm.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Not (Key in ['1','2','3','4','5','6','7','8','9','0',chr(8)]) then
begin
Key := #0;
exit;
end;
if Edit1.Text='' then exit; //这里 我想在edit1里写数字 然后计算一些东西 可是要是edit1里只有一位数字的时候,Edit1.Text老是为空 要怎么办啊???
...
...end;
begin
if Not (Key in ['1','2','3','4','5','6','7','8','9','0',chr(8)]) then
begin
Key := #0;
exit;
end;
if Edit1.Text='' then exit; //这里 我想在edit1里写数字 然后计算一些东西 可是要是edit1里只有一位数字的时候,Edit1.Text老是为空 要怎么办啊???
...
...end;
解决方案 »
- 求ExtStringGrid等控件
- 申请做delphi数据相关版主及delphi大版主希望大家支持!
- 奇怪的不得了,数据库中是负数,用adotable读出来就是负数!!!!!
- delphi入门该看什么书,最好能给出下载地址。
- 怎样让可执行文件在别人的机器上也可以用,在线
- 请大家帮助一下,关于SetPixel如何使用??急
- 请问怎样才能令edit编辑框里的(文字从右边开始到左边扩展)
- 女朋友出国了,我该怎么办?
- 一个会用MapInfo或MapX和Delphi结合进行开发的人的月薪
- 以rec结尾的数据库文件是用什么软件创建的?
- 给DBGrid1着色的问题
- 高手支招,delphi中如何实现类似c中的scanf(...)函数的功能?
if not (Key in ['0'..'9']) then
begin
key:=#0;
exit;
end;
end;
if Edit1.Text='' then exit; //这里 我想在edit1里写数字 然后计算一些东西 可是要是edit1里只有一位数字的时候,Edit1.Text老是为空 要怎么办啊???
begin
if Trim(Edit1.Text) <> '' then
exit;
end;就可以了。
可是key又很不方便 并且我画的那个窗体 要用Edit1Exit事件 几乎不行还有别的方法能让别人在写完字后 按确定按钮前就能计算出想要的结果吗?
比如你要算 a * b = c;
a 即edit1procedure tform1.edit1keypress(...)
begin
if key in ['0'..'9'] then
c := strtoint(edit1.text) * b;
end;
{计算代码}不知道是不是楼主的意思
表示在按键盘的时候触发,所以此时的edit.text内容还没有接受到键盘输入的key 值
你的
if Edit1.Text='' then exit;
在Edit1.Text='' 是没有意义的