delphi 怎么计算一个memo中输入的汉字数目
在一个memo中输入汉字,memo下边用lable显示已输入汉字的数目,另外怎么限制memo中输入汉字的数目...
在一个memo中输入汉字,memo下边用lable显示已输入汉字的数目,另外怎么限制memo中输入汉字的数目
展开
2012-03-01 · 知道合伙人软件行家
关注
展开全部
1. 实时显示输入汉字与英文字母数目:
procedure TForm1.Memo1Change(Sender: TObject);
var
s: string;
i,sum,e,c,t: Integer;
begin
s := Memo1.Text;
e := 0;
c := 0;
sum := Length(s);
for i := 0 to sum do
begin
if (Ord(s[i]) >= 33) and (Ord(s[i]) <= 126) then
begin
Inc(e);
end;
if Ord(s[i]) >= 127 then
begin
Inc(c);
end;
end;
Label1.Caption := '字母数: ' + IntToStr(e)+ ' 汉字数: ' + IntToStr(c div 2);
end;
2. 限制memo中输入字符数目:
设置MaxLength属性为你想要的数字。
有分加分啊
procedure TForm1.Memo1Change(Sender: TObject);
var
s: string;
i,sum,e,c,t: Integer;
begin
s := Memo1.Text;
e := 0;
c := 0;
sum := Length(s);
for i := 0 to sum do
begin
if (Ord(s[i]) >= 33) and (Ord(s[i]) <= 126) then
begin
Inc(e);
end;
if Ord(s[i]) >= 127 then
begin
Inc(c);
end;
end;
Label1.Caption := '字母数: ' + IntToStr(e)+ ' 汉字数: ' + IntToStr(c div 2);
end;
2. 限制memo中输入字符数目:
设置MaxLength属性为你想要的数字。
有分加分啊
展开全部
memo上的MaxLength属性可以设置输入的字符数目,另外一个汉字算2个字符。其他的你看看下面的代码,这是memo上的onchange方法:
procedure TForm1.mmo1Change(Sender: TObject);
var
s:String;
i,t:Integer;
begin
s:='';
for i:=0 to mmo1.lines.count do
begin
s:=s+ mmo1.lines[i];
end;
t:=Length(s);
lbl1.Caption:=IntToStr(t);
end;
procedure TForm1.mmo1Change(Sender: TObject);
var
s:String;
i,t:Integer;
begin
s:='';
for i:=0 to mmo1.lines.count do
begin
s:=s+ mmo1.lines[i];
end;
t:=Length(s);
lbl1.Caption:=IntToStr(t);
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询