Memo 的当前行、当前列与当前字符
procedure TForm1.Memo1Click(Sender: TObject);
begin
Text := Format('当前列:%d, 当前行:%d', [Memo1.CaretPos.X, Memo1.CaretPos.Y]);
end; //用 API 实现
procedure TForm1.Memo1Click(Sender: TObject);
var
LineY,LineX: Integer;
begin
LineY := SendMessage(Memo1.Handle,EM_LINEFROMCHAR,Memo1.SelStart,0);
LineX := SendMessage(Memo1.Handle,EM_LINEINDEX,LineY,0);
Text := '当前行:' + IntToStr(LineY) + '; ' + //0开始
'当前列:' + IntToStr(Memo1.SelStart - LineX) + '; ' + //0开始
'当前字符:' + IntToStr(Memo1.SelStart) + '. '; //包括#13#10
end;
//统计字数 //添加 Memo1、Label1、Label2、还有Button1
procedure TForm1.Button1Click(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);
Label1.Caption := '字母数: ' + IntToStr(e);
end; if Ord(s[i]) >= 127 then
begin
Inc(c);
Label2.Caption := '汉字数: ' + IntToStr(c div 2);
end;
end;
end;
Memo 的当前行、当前列与当前字符的更多相关文章
- Memo synEditor 当前行号
Memo 当前行号,坐标,位置 可以使用Memo的属性CaretPos.X来取行鼠标所在行的行数与鼠标所在行的第几位 Memo.CaretPos.X 光标或鼠标所在行的列号(第几位),从0开始计数Me ...
- 软件工程实践_Task2_sudoku
软工实践_Task2 标签(空格分隔): 软工实践 相关要求:第二次作业--个人项目实战 github:传送门 解题思路 先是一点杂谈. 首先,看完作业要求之后,心里先有个大概的框架. 语言:C++ ...
- SAS笔记
SAS基础知识 SAS里面的PROC一览 The ACECLUS Procedure : 聚类的协方差矩阵近似估计(approximate covariance estimation for clus ...
- linux vi 命令大全
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- vim(vi)常用操作及记忆方法
vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...
- ubuntu的vim模式
之前想修改一个文件的内容,居然发现之前的东西又随着时间在空气中淡忘了,所以取了网上的一些摘文. 1.vim #在命令行中输入vim,进入vim编辑器 2. i #按一下i键,下端显示 --INSERT ...
- 【Linux学习】Vi 操作命令集合
Vi 操作命令集合 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文 ...
- linux下vi命令大全
进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...
- vi command
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
随机推荐
- gen_grant_sel.sql
set echo off feedback off verify off pagesize 0 linesize 120 define v_grantee=&1 define v_grant_ ...
- dyld: Symbol not found: _OBJC_CLASS_$_UIBlurEffect
信息如下: 不知道为撒出现这个问题,查资料也木有查到..看提示信息可能是UIKit的问题,所以就试着这样解决,结果居然好了....有谁知道原因的告诉额一声啊,拜托!
- DataGridView如何实现列标头带数据筛选功能,就象Excel高级筛选功能一样
'近日有本论坛网友问:DataGridView如何实现列标头带数据筛选功能,就象Excel高级筛选功能一样 '今晚正好闲着没事,加之以前也没用到过这个需求,所以就写了个模拟功能,供各位坛友酌情参考. ...
- Entity Framework Power Tools Beta 3
http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/ PM> Install-P ...
- Eclipse 配置工程
Eclipse改UTF-8 Window->Preferences->General->Workspace->Text file Encoding Eclipse配置tomca ...
- html中DIv并排显示问题
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...
- spring boot + neo4j restful
整整折腾了三天,终于把spring boot + neo4j的路走通了. 这里介绍3个部分,pom,entity,repository 1)pom <?xml version="1.0 ...
- Animation动画
Animation: 1,AlphaAnimation, 透明度动画, 2, RotateAnimation, 旋转动画, 3,ScaleAnimation, 缩放动画 4,TranslateAni ...
- sublime text 我的常用配置
{ "color_scheme": "Packages/Color Scheme - Default/IDLE.tmTheme", "font_fac ...
- input的onchange事件实际触发条件与解决方法
input中onchange事件已经属于元老级别了,并且现在同onclick一样使用频率很高,然而onchange的机制实际上有很多童鞋并不清楚,我们通过实例来分析这个事件的特征. 触发onchang ...