请帮我输出VS基于MFC创建一个通讯录的代码
时间: 2024-02-22 08:54:58 浏览: 91
基于MFC最详细的通讯录
好的,以下是一个简单的基于MFC创建通讯录的代码示例:
首先,创建一个MFC对话框应用程序,将对话框的模板设置为“Empty Dialog”。
在资源视图中,右键单击“资源文件”,选择“添加->对话框”,将对话框命名为“AddressBookDlg”。
在“AddressBookDlg”的属性中,设置“标题”为“通讯录”,“风格”为“可调整大小”。
在“AddressBookDlg”的设计视图中,将一个列表框控件和多个编辑框控件拖放到对话框上,用于显示和编辑联系人信息。将列表框控件的ID设置为“IDC_LIST”,将编辑框控件的ID分别设置为“IDC_NAME”、“IDC_PHONE”、“IDC_EMAIL”等。
在“AddressBookDlg”的类视图中,添加成员变量,分别对应列表框控件和编辑框控件:
```cpp
CListCtrl m_list;
CEdit m_editName;
CEdit m_editPhone;
CEdit m_editEmail;
```
在“AddressBookDlg”的OnInitDialog()函数中,初始化列表框控件:
```cpp
BOOL CAddressBookDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 初始化列表框控件
m_list.InsertColumn(0, _T("姓名"));
m_list.InsertColumn(1, _T("电话"));
m_list.InsertColumn(2, _T("邮箱"));
m_list.SetColumnWidth(0, 100);
m_list.SetColumnWidth(1, 100);
m_list.SetColumnWidth(2, 150);
return TRUE;
}
```
在“AddressBookDlg”的消息映射中,添加响应“添加”和“删除”按钮的代码:
```cpp
BEGIN_MESSAGE_MAP(CAddressBookDlg, CDialogEx)
// 添加按钮
ON_BN_CLICKED(IDC_ADD, &CAddressBookDlg::OnBnClickedAdd)
// 删除按钮
ON_BN_CLICKED(IDC_DELETE, &CAddressBookDlg::OnBnClickedDelete)
END_MESSAGE_MAP()
void CAddressBookDlg::OnBnClickedAdd()
{
// 获取编辑框中的联系人信息
CString name, phone, email;
m_editName.GetWindowText(name);
m_editPhone.GetWindowText(phone);
m_editEmail.GetWindowText(email);
// 添加到列表框中
int index = m_list.InsertItem(m_list.GetItemCount(), name);
m_list.SetItemText(index, 1, phone);
m_list.SetItemText(index, 2, email);
// 清空编辑框
m_editName.SetWindowText(_T(""));
m_editPhone.SetWindowText(_T(""));
m_editEmail.SetWindowText(_T(""));
}
void CAddressBookDlg::OnBnClickedDelete()
{
// 获取选中的项
int index = m_list.GetNextItem(-1, LVNI_SELECTED);
if (index == -1) {
return;
}
// 删除选中的项
m_list.DeleteItem(index);
}
```
现在,您可以编译并运行该应用程序,即可看到一个简单的通讯录界面。您可以使用编辑框添加联系人信息,使用列表框显示和删除联系人信息。注意,这只是一个简单的示例,实际开发中还需要添加更多的功能和错误处理。
阅读全文