MFC 编辑框实现默认全选内容
时间: 2024-02-12 21:06:30 浏览: 94
一个MFC的编辑框控件
5星 · 资源好评率100%
在 MFC 编程中,可以通过重载 `CEdit` 类的 `OnSetFocus` 函数实现编辑框默认全选内容的功能。具体步骤如下:
1. 在资源编辑器中创建一个编辑框控件,可以设置其属性为多行(Multiline)和只读(Read-only)。
2. 在类向导中添加该编辑框的成员变量,并将其类型设置为 `CEdit`。
3. 在该编辑框的消息映射中添加 `WM_SETFOCUS` 消息的处理函数。处理函数的代码如下:
```cpp
void CMyDlg::OnSetfocusEditContent()
{
// 获取编辑框控件指针
CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDIT_CONTENT);
// 设置编辑框内容全选
pEdit->SetSel(0, -1);
}
```
其中,`GetDlgItem` 函数用于获取编辑框控件的指针,`SetSel` 函数用于设置编辑框内容的选中区域,参数 `-1` 表示选中所有内容。
4. 在对话框创建时,将焦点设置到该编辑框控件上。可以在 `OnInitDialog` 函数中添加以下代码:
```cpp
BOOL CMyDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// TODO: Add extra initialization here
// 将焦点设置到编辑框控件上
GetDlgItem(IDC_EDIT_CONTENT)->SetFocus();
return TRUE; // return TRUE unless you set the focus to a control
}
```
这样,在打开对话框时,编辑框中的所有内容就会被默认全选了。
阅读全文