因为是打字就可以不考虑鼠标了,在onchange事件里,依次判断每个个字节是否大于128,
如是,汉字加一,且忽略后面的1个字符;若小于则是ascii。
公共变量
charcount:integer;中英文字符总数
v:integer;速度
st:tdatetime;开始时间
onchange:
k:=0;
for i:=1 to length(memo1.text) do
begin
//控制符号就不算了吧
if ms=控制符号,10,13,tab等 then
continue;
//是否是中文
if ord(ms)>128 then
begin
//ms+ms[i+1]是一个汉字
k:=k+1;
continue;
end
else
k:=k+1;
end;
charcount:=k;
v:=k/(now()-st);