本节任务点
◉ 为所有菜单项添加测试响应函数
◉ 添加删除列表指定条目的功能
为所有菜单项添加测试响应函数:
添加菜单响应函数:
void CPCRemoteDlg::OnOnlineCmd()
{if (TEST_MODE) {MessageBox("终端管理界面");}
}void CPCRemoteDlg::OnOnlineDesktop()
{if (TEST_MODE) {MessageBox("桌面管理界面");}
}void CPCRemoteDlg::OnOnlineFile()
{if (TEST_MODE) {MessageBox("文件管理界面");}
}void CPCRemoteDlg::OnOnlineProcess()
{if (TEST_MODE) {MessageBox("进程管理界面");}
}void CPCRemoteDlg::OnOnlineReg()
{if (TEST_MODE) {MessageBox("注册表管理界面");}
}void CPCRemoteDlg::OnOnlineRemote()
{if (TEST_MODE) {MessageBox("远程管理界面");}
}void CPCRemoteDlg::OnOnlineService()
{if (TEST_MODE) {MessageBox("服务管理界面");}
}void CPCRemoteDlg::OnOnlineVideo()
{if (TEST_MODE) {MessageBox("视频管理界面");}
}void CPCRemoteDlg::OnOnlineVoice()
{if (TEST_MODE) {MessageBox("语言管理界面");}
}void CPCRemoteDlg::OnOnlineWindow()
{if (TEST_MODE) {MessageBox("窗口管理界面");}
}
然后一定要一一测试各个菜单是否都能对号入座,防止以后写代码出现功能混乱的情况
最终发现都能够通过测试,菜单响应的测试至此结束
添加删除列表指定条目的功能
在用户选择指定条目的时候,新加一个删除菜单项,便于用户删除该行的记录
为该菜单项添加相应事件的处理函数:
记得也要先用MessageBox之类的函数进行测试,再添加真正的功能代码,这样便于区分错误产生的真实位置
先确定作用的区域是Online_List列表,然后向这个区域的老大去询问你向知道的信息!!!
比如你想知道用户选中的是列表的哪一行,就:Online_List.GetSelectMark(),返回行号
因此我们为OnOnlineDelete()函数添加如下功能,用于删除用户指定的条目:
void CPCRemoteDlg::OnOnlineDelete()
{int nSelect = m_CList_Online.GetSelectionMark();m_CList_Online.DeleteItem(nSelect);
}
在测试代码当中多添加几个条目:
// 添加伪上线和日志测试代码
void CPCRemoteDlg::test()
{addOnlieListItem("192.168.0.3", "江苏", "戴尔灵越14Pro", "Windows10", "4.46GHz", "无", "17676");addOnlieListItem("192.168.0.2", "江苏", "联想小新Air14plus", "Windows10", "2.86GHz", "存在摄像头", "11251");addOnlieListItem("192.168.0.1","江苏","联想拯救者y7000s","Windows11","3.89GHz","存在摄像头","15556");showMessage(true,"软件初始化成功");
}
删除第2个条目,发现功能正常实现:
删除条目的同时,打印相对应的日志信息
void CPCRemoteDlg::OnOnlineDelete()
{bool isDeleteSuccess = false;CString strIP = 0;int nSelect = m_CList_Online.GetSelectionMark();strIP = m_CList_Online.GetItemText(nSelect, ONLINELIST_IP);strIP += " 主机断开连接...";isDeleteSuccess = m_CList_Online.DeleteItem(nSelect);if (isDeleteSuccess) {showMessage(isDeleteSuccess,strIP);}else {MessageBox("操作失败");}
}
最终效果截图: