MFC 编辑框控件 如何获取光标位置
时间: 2024-03-07 19:48:02 浏览: 204
编辑控件和CEdit类-mfc控件设计
你可以使用 `CEdit` 类的 `GetSel` 函数来获取编辑框中的光标位置。该函数返回值是一个 `DWORD` 类型,其中高16位表示光标的结束位置,低16位表示光标的起始位置。如果起始位置等于结束位置,则表示光标没有选中任何文本,即为当前光标所在位置。
以下是一个示例代码:
```cpp
CEdit edit;
// 假设已经创建了一个名为 edit 的编辑框控件
// 获取光标位置
DWORD sel = edit.GetSel();
int cursorPos = LOWORD(sel); // 获取光标起始位置
// 输出光标位置
CString str;
str.Format(_T("当前光标位置:%d"), cursorPos);
AfxMessageBox(str);
```
注意,该函数只适用于获取单行编辑框中的光标位置。如果需要获取多行编辑框中的光标位置,可以使用 `CRichEditCtrl` 类的 `GetSel` 函数。
阅读全文