今天把用户管理界面大致完成了,主要涉及的功能为展示所有用户、删除当前用户、更改当前用户信息。
参考网址:
怎样在程序中让Edit Control显示或是隐藏
Edit Control
1、UI
用户管理界面,点击会议管理切换至会议管理界面,点击修改用户信息切换至用户信息修改页面,
当前用户显示当前登录的用户的用户名
用户信息修改页面,点击修改密码按钮后才能修改密码,需要输入旧密码才能修改新密码,
点击确认修改后更新当前用户信息。
2、代码
//处理用户管理对话框消息
INT_PTR CALLBACK DialogProcUserManagement(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) {
switch (msg)
{
//初始化时列出所有用户的信息
case WM_INITDIALOG: {
HWND hUserList = GetDlgItem(hdlg, IDC_LIST2);
//设置listView的列信息包含哪些
LVCOLUMN col;
col.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
//列标题
col.pszText = L"用户名";
//列宽
col.cx = 90;
// 子项索引,第一列无子项
col.iSubItem = 0;
ListView_InsertColumn(hUserList, 0, &col);
//第二列
col.pszText = L"用户邮箱";
col.cx = 160;
col.iSubItem = 2;
ListView_InsertColumn(hUserList, 1, &col);
//第三列
col.pszText = L"用户电话";
col.cx = 90;
col.iSubItem = 3;
ListView_InsertColumn(hUserList, 2, &col);
std::list<User> users = agendaService.listAllUsers();
int arrCount = 0;
LVITEM vitem;
vitem.mask = LVFIF_TEXT;
for (auto iter : users) {
vitem.pszText = StringToWchar(iter.getName());
vitem.iItem = arrCount;
//设置子项
vitem.iSubItem = 0;
ListView_InsertItem(hUserList, &vitem);
vitem.iSubItem = 1;
vitem.pszText = StringToWchar(iter.getEmail());
ListView_SetItem(hUserList, &vitem);
vitem.iSubItem = 2;
vitem.pszText = StringToWchar(iter.getPhone());
ListView_SetItem(hUserList, &vitem);
arrCount&#