一.基础知识:
1.删除列表控件中的某一行:
BOOL DeleteItem( int nItem //列表的索引 从0开始 );
2.获得当前列表控件焦点的索引:
int GetSelectionMark( ); //得到用户选中的条目索引
3.获得列表控件某行某列的内容:
CString GetItemText( int nItem, //哪一行 int nSubItem //行中的那个子列 ) const
二.具体实现:
1.在资源视图里面,在IDR_MENU_ONLINE菜单中,最下面添加"断开连接",重设ID为:IDM_ONLINE_DELETE.
2.在CPCRemoteDlg类的事件中,其中有菜单命令,分别实现每一个COMMAND事件响应:
void CPCRemoteDlg::OnOnlineAudio() { // TODO: 在此添加命令处理程序代码 MessageBox("语音管理"); } void CPCRemoteDlg::OnOnlineCmd() { // TODO: 在此添加命令处理程序代码 MessageBox("终端管理"); } void CPCRemoteDlg::OnOnlineDesktop() { // TODO: 在此添加命令处理程序代码 MessageBox("桌面管理"); } void CPCRemoteDlg::OnOnlineFile() { // TODO: 在此添加命令处理程序代码 MessageBox("文件管理"); } void CPCRemoteDlg::OnOnlineProcess() { // TODO: 在此添加命令处理程序代码 MessageBox("进程管理"); } void CPCRemoteDlg::OnOnlineRegedit() { // TODO: 在此添加命令处理程序代码 MessageBox("注册表管理"); } void CPCRemoteDlg::OnOnlineServer() { // TODO: 在此添加命令处理程序代码 MessageBox("服务管理"); } void CPCRemoteDlg::OnOnlineVideo() { // TODO: 在此添加命令处理程序代码 MessageBox("视频管理"); } void CPCRemoteDlg::OnOnlineWindow() { // TODO: 在此添加命令处理程序代码 MessageBox("窗口管理"); } void CPCRemoteDlg::OnOnlineDelete() { // TODO: 在此添加命令处理程序代码 CString strIP; int iSelect=m_CList_Online.GetSelectionMark( ); // 获得选定行的索引 m_CList_Online.DeleteItem(iSelect); // 删除指定索引的行 strIP=m_CList_Online.GetItemText(iSelect,ONLINELIST_IP); // 获得指定行指定列的内容 strIP+=" 断开连接"; ShowMessage(true,strIP); // 显示字符串到消息输出列表,生成下线日志 }