前面一片博客磁盘文件目录罗列和list控件的使用 写过关于list控件的一点使用方法。这篇博客接着继续讲list控件,当我把某个磁盘下的文件目录列出来显示在list控件中,我们肯定是想要对这些目录进行一些操作,比如新建文件夹、删除文件等操作。那么就必须让list控件响应鼠标的操作。
1、那么如何响应鼠标的左键单击事件呢?选中对话框中的list控件,右键弹出类向导,添加消息NM_CLICK的事件 响应函数。如下:
void CFTPCilentDlg::OnNMClickListlocal(NMHDR *pNMHDR, LRESULT *pResult) //左键单击事件
{
LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
// TODO: 在此添加控件通知处理程序代码
CString strtempname;
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
// strtemp.Format("单击的是第%d行第%d列",
// pNMListView->iItem, pNMListView->iSubItem);
strtempname=m_listlocal.GetItemText(pNMListView->iItem,0); //获取当前选中行的第一列值,即文件名
// AfxMessageBox(strtemp);
drvback=drv;
fieldname