gh0st远程控制——客户端界面编写(四)

 本节任务点

◉ 为所有菜单项添加测试响应函数

◉ 添加删除列表指定条目的功能

为所有菜单项添加测试响应函数:

gh0st远程控制——客户端界面编写(四)_第1张图片

添加菜单响应函数: 

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("窗口管理界面");
	}
}

然后一定要一一测试各个菜单是否都能对号入座,防止以后写代码出现功能混乱的情况

最终发现都能够通过测试,菜单响应的测试至此结束

gh0st远程控制——客户端界面编写(四)_第2张图片

添加删除列表指定条目的功能 

在用户选择指定条目的时候,新加一个删除菜单项,便于用户删除该行的记录

gh0st远程控制——客户端界面编写(四)_第3张图片

为该菜单项添加相应事件的处理函数:

gh0st远程控制——客户端界面编写(四)_第4张图片

记得也要先用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个条目,发现功能正常实现:

gh0st远程控制——客户端界面编写(四)_第5张图片

删除条目的同时,打印相对应的日志信息

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("操作失败");
	}
}

最终效果截图: 

gh0st远程控制——客户端界面编写(四)_第6张图片

你可能感兴趣的:(windows,c语言,c++,网络安全)