PrnAddressList.Create(WS_CHILD | WS_VISIBLE |LBS_NOTIFY | WS_VSCROLL | WS_BORDER | LBS_MULTIPLESEL,
rcPrnAddressList, this, ID_PrnAddressList);上面的 CListBox 创建中使用了 LBS_NULTIPLESEL 样式,试了下运行效果,和平时习惯用法不一样。运行时在选择第二个的时候不需要按下 CTRL 或 SHIFT 键!只要鼠标点就可以了。 取消选择时也不需要按键,只需鼠标单击选中项就可以取消选中!
TCHAR szFilters[] = _T("prn|*.prn||");
CFileDialog dlg(TRUE,0,0, OFN_FILEMUSTEXIST | OFN_ALLOWMULTISELECT, szFilters);
if( IDCANCEL == dlg.DoModal() )
return;
CString f = dlg.GetPathName();
PrnAddressList.AddString(f);//这个是 CListBox上面在创建 CFileDialog 时使用了 OFN_ALLOWNMULTISELECT 样式可以多项选择,运行程序,在桌面选则 a.prn 和 b.prn 但是这运行效果却不是想要的。我估计问题出在 GetPathName 函数上!