SendMessage(Memo1.Handle, EM_LINEINDEX, 2,0);想把光标定位到Memo1的第三行上,但是调试没实现效果.
解决方案 »
- delphi ID递增问题,求高手
- 如何查询在一个报表中日期在用户选定日期之内的记录
- 如何实数转换为整数?快回答!限3分钟内回答,否则不给分!
- 小弟有个子窗体显示的问题,向各位大哥大姐请教一下.急!!!!
- 无边框,无任务栏显示的窗口怎么做!?
- 关于 TImage 的一个问题
- 这个sql语句如何写?非高手莫进。
- delphi6里面是不是没有midaspageproducer控件??
- 怎样在一个字符串前加空格?
- 急,如何把动态创建的可视组件放置在窗口的最顶层?
- access violation at 0x00416979:write if address 0x04b90000.
- PHP中crypt()加密函数delphi实现
Memo1.SelStart := SendMessage(Memo1.Handle, EM_LINEINDEX, 2,0);
这样行了,原来我只是写SendMessage(Memo1.Handle, EM_LINEINDEX, 2,0);
所以Memo1.SelStart := SendMessage(Memo1.Handle, EM_LINEINDEX, 2, 0);就是把光标定位在第3行的第一个字符前面了.
如果想把光标定位在第n行第m列就需要用到下面的代码:
Memo1.SelStart := SendMessage(Memo1.Handle, EM_LINEINDEX, n - 1, 0) + m - 1;
x := SendMessage(Memo1.Handler, EM_LINEFROMCHAR, Memo1.SelStart, 0);
返回当前光标位置的列号:
y := SendMessage(Memo1.Handler, EM_LINEINDEX, -1, 0);
z := Memo1.SelStart - y;