在VC.NET中的CFileDialog的使用问题,请教各位大哥
我要打开多个文件使用CFielDialog fielDailog.m_ofn的时候没有m_ofn这个变量存在是怎么回事
请各位大哥讲解一下,能否顺便教我怎么写打开多个文件,用CFileDialog函数
谢谢各位了!
问题点数:20、回复次数:14Top
1 楼avisnet(第十维度)回复于 2006-10-04 12:55:40 得分 0
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.Flags |= OFN_ALLOWMULTISELECT;Top
2 楼fuleisos()回复于 2006-10-04 15:06:16 得分 0
楼上的大哥,我没有办法调用m_ofn这个变量,调用它的时候自动函数没有给出这个函数的名字,是不是我的.NET有问题啊。还是我的头函数包含的问题!请大哥再给赐教!多谢Top
3 楼avisnet(第十维度)回复于 2006-10-04 15:41:19 得分 0
你不能总是依赖于智能感知吧?没有提示出来你就自己写。
VS的IDE的确不错,不过也使一些人越来越懒惰了。
你可以删掉工程目录下的ncb文件试试。Top
4 楼fuleisos()回复于 2006-10-08 21:51:35 得分 0
主要是因为他没有自动给出函数,我自己从定义了结构编译没有通过,我看不行就没有定义结构按照一般的写法写
CFileDialog FileDialog(TRUE, "BMP",NULL,//开启文件操作
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT |OFN_ALLOWMULTISELECT|OFN_EXPLORER,
strFile,this);//打开对话框
FileDialog.m_ofn.lpstrFile = new TCHAR[100 * 20];//申请
但还是不能通过编译。删除.ncd也没有起作用所以才求助与各位大狭的。Top
5 楼fuleisos()回复于 2006-10-08 21:57:41 得分 0
大狭您能否加我的QQ,赐教小弟一些问题解决办法
QQ:393904774Top
6 楼hdt(倦怠)回复于 2006-10-09 11:15:48 得分 0
什么工程????
编译出什么错???
Top
7 楼fuleisos()回复于 2006-10-11 18:44:01 得分 0
我的程序需有要打开多个文件,但我用
CFileDialog fielGld.m_ofn.lpstrFile = new TCHAR[5000];
这种方法没有申请出空间,老是报错。智能感知没有办法把m_ofn这个函数调用出来。
好象就不存在,请赐教怎么会事?谢谢!Top
8 楼fuleisos()回复于 2006-10-11 18:45:57 得分 0
另外说明我的标志定义为OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT |OFN_ALLOWMULTISELECT
多选结构了,使用构造函数中就定义了好了!Top
9 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-10-12 05:40:07 得分 0
m_ofn became m_pofn in VC.NetTop
10 楼Binli1106()回复于 2006-10-12 11:58:22 得分 0
CFileDialog dlg (TRUE, NULL, NULL, OFN_ALLOWMULTISELECT,
_T("All files (*.*)|*.*||"), 0);
if (dlg.DoModal() == IDOK)
{
POSITION pos = dlg.GetStartPosition();
while (pos)
{
CString sFile = dlg.GetNextPathName(pos);
m_lstFiles.AddString(sFile);
}
}Top
11 楼fuleisos()回复于 2006-10-12 20:08:43 得分 0
楼上这位大哥能写的详细点吗?m_lstFiles的数据类型是什么啊??小弟我是刚入门的菜鸟劳驾了Top
12 楼xieqidong(广州)回复于 2006-10-13 09:23:14 得分 0
还是蒋兄说得对。Top
13 楼Binli1106()回复于 2006-10-13 10:33:39 得分 0
m_lstFiles是自动添加到最近打开那个菜单,你用不到的
你不是要打开多个文件吗
CString sFile = dlg.GetNextPathName(pos);取到的是你选择的文件的路径Top
14 楼fuleisos()回复于 2006-10-13 16:32:51 得分 0
我从新编写了代码给他申请了空间了,用的是
CFileDialog fileDlg.m_pOFN->lpstrFile = str.GetBuffer(1000);
我再用CFile的Write输出的字符变成了乱码会影响到文件路径的打开吗?
用别的函数来调用会出错吗?Top




