MFC 如何实现前进后退的功能 我要做一个打开文件夹的按钮,用它打开文件夹,然后设置两个前进后退的按钮,就像系统里我的电脑中前进后退的功能,请问大家,该怎么实现,谢谢大家了^_^ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个只有你用成员变量记录 上一次访问的路径, 前进按钮是你后腿一次 才能用前进用2个CStringArray To:babilife (babilife) 没错,我用得就是单文档的啊,但是具体怎么实现呢?请您讲清楚一点,我如何才能把我浏览过的路径名保存下来,并且在按前进后退时对路径名进行操作?用双链表么?还是用数组? To:jianuMan(九型人格)谢谢,具体怎么实现,能指导一下么,谢谢了 To:Mdesigner(Mdesigner)不好意思,我没有弄懂你的意思,请你说清楚一点儿好么,谢谢 TO:VisualEleven 谢谢回答,能给个具体点儿的代码么?谢谢了 LPITEMIDLIST PidlBrowse(HWND hwnd, int nCSIDL, LPSTR pszDisplayName){ LPITEMIDLIST pidlRoot = NULL; LPITEMIDLIST pidlSelected = NULL; BROWSEINFO bi = {0}; LPMALLOC pMalloc = NULL; SHGetMalloc(&pMalloc); if(nCSIDL) { SHGetFolderLocation(hwnd, nCSIDL, NULL, NULL, &pidlRoot); } else { pidlRoot = NULL; } bi.hwndOwner = hwnd; bi.pidlRoot = pidlRoot; bi.pszDisplayName = pszDisplayName; bi.lpszTitle = "Choose a folder"; bi.ulFlags = 0; bi.lpfn = NULL; bi.lParam = 0; pidlSelected = SHBrowseForFolder(&bi); if(pidlRoot) { pMalloc->Free(pidlRoot); } pMalloc->Release(); return pidlSelected;} 感谢Worcy_kiddy 我去试试看 你去codeproject上,或者csdn的下载里搜索一下吧 vs2010菜单编辑 请教:MFC中从链表删除一个结点的问题? 定义变量时,哪种情况是在栈中分配内存,哪种情况是在堆中分配内存呢? 上下文菜单编辑框的问题 新手学C++,VS.NET2003下如何调试,求教 请教高手:为什么我的动态库不能在线程中使用? 一个古老的简单的问题:怎么截获窗口最大化最小化消息??? 两个win32 sdk的问题。 批量插入问题//VC 数据库 ATL 复合控件中如何取得控件的 Unknown 接口? 修改VC6中环境变量无法保存问题 纯虚函数在什么情况下可以调用,我怎么看到这个程序中可以调用纯虚函数
用2个CStringArray
没错,我用得就是单文档的啊,但是具体怎么实现呢?请您讲清楚一点,我如何才能把我浏览过的路径名保存下来,并且在按前进后退时对路径名进行操作?用双链表么?还是用数组?
谢谢,具体怎么实现,能指导一下么,谢谢了
不好意思,我没有弄懂你的意思,请你说清楚一点儿好么,谢谢
谢谢回答,能给个具体点儿的代码么?谢谢了
LPITEMIDLIST PidlBrowse(HWND hwnd, int nCSIDL, LPSTR pszDisplayName)
{
LPITEMIDLIST pidlRoot = NULL;
LPITEMIDLIST pidlSelected = NULL;
BROWSEINFO bi = {0};
LPMALLOC pMalloc = NULL; SHGetMalloc(&pMalloc); if(nCSIDL)
{
SHGetFolderLocation(hwnd, nCSIDL, NULL, NULL, &pidlRoot);
} else
{
pidlRoot = NULL;
} bi.hwndOwner = hwnd;
bi.pidlRoot = pidlRoot;
bi.pszDisplayName = pszDisplayName;
bi.lpszTitle = "Choose a folder";
bi.ulFlags = 0;
bi.lpfn = NULL;
bi.lParam = 0; pidlSelected = SHBrowseForFolder(&bi); if(pidlRoot)
{
pMalloc->Free(pidlRoot);
}
pMalloc->Release();
return pidlSelected;
}