50分了!

fellowcheung 2003-08-02 01:39:53
如何才能求得Memo或RichEdit等编辑框的当前行和所在行的具体列位置呢?
...全文
25 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶子哟 2003-08-02
  • 打赏
  • 举报
回复
void __fastcall TForm1::Button1Click(Tobject *Sender)
{
Label1->Caption=SendMessage(Memo1->Handle,EM_LINEFROMCHAR,-1,0)+1;
}
void __fastcall TForm1::Button2Click(Tobject *Sender)
{
Label2->Caption=Memo1->SelStart-SendMessage(Memo1->Handle,EM_LINEINDEX,-1,0)+1;
}
domustdo 2003-08-02
  • 打赏
  • 举报
回复
是不是指当前的光标所在位置的行和列?可以使用EM_EXLINEFROMCHAR和EM_LINEINDEX来获取行列的信息。
int line =SendMessage(RichEdit1->Handle,
EM_EXLINEFROMCHAR, 0,RichEdit1->SelStart);
int lineindex=SendMessage(RichEdit1->Handle, EM_LINEINDEX, line, 0);
StatusBar->Panels->Items[1]->Text="行 "+IntToStr(line+1)
+", 列 "+IntToStr(RichEdit1->SelStart-lineindex+1);

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧