返回狼盟编程首页
编程搜索 [狼盟旧档]
论坛统计


请输入搜索关键字:
├─◆ 狼盟首页 > 查看贴子 > 详细信息

楼主

c++的对话框问题


想做的程序里面用到一个打开文件的对话框,可是不知道怎么做啊?需要什么插件吗?请指教





tianyuan008 [ 1 楼 ]
2006-03-04 16:14:00
你用的是什么编译器?  

CCCP [ 2 楼 ]
2006-03-04 17:49:00
#include <windows.h>#include <tchar.h>#include <stdio.h>#include <stdlib.h>int main(void){    TCHAR filename[MAX_PATH] = { 0 };    OPENFILENAME ofn = { 0 };    ofn.lStructSize = sizeof(OPENFILENAME);    ofn.lpstrFilter = _T("All Files (*.*)*.*");    ofn.lpstrFile = filename;    ofn.nMaxFile = MAX_PATH;    if (GetOpenFileName(&ofn)) {        _putts(ofn.lpstrFile);    }    system("pause");    return 0;} 

mnbvcx5z [ 3 楼 ]
2006-03-04 19:05:00
我用的是vc++6.0楼上那位大哥的代码我有点看不懂,请问用拖拽的方式能做吗? 

mnbvcx5z [ 4 楼 ]
2006-03-05 08:06:00
再帮一下忙啊 

tianyuan008 [ 5 楼 ]
2006-03-05 15:10:00
VC 6 带上 MFC 支持的话, CFileDialog 就是你要的对话框类.要使用 CFileDialog ,只要用 CFileDialog 类的构造函数构造一个 CFileDialog 对象,然后再用 DoModal 方法显示它就行了.示例如下://///构造并显示打开文件对话框///////////  CFileDialog dlgOpenFile(true);  dlgOpenFile.DoModal();//////构造并显示保存文件对话框///////////  CFileDialog dlgSaveFile(false);  dlgSaveFile.DoModal();说明:  CFileDialog 类的构造函数的第一个参数是 bool 型, 如果取 true ,则构造的是  打开文件对话框,如果取 false,则构造的是保存文件对话框.2 楼用的是 Windows API , 其中的结构和函数原型在commdlg.h 中实现在 commdl32.lib 中. 

mnbvcx5z [ 6 楼 ]
2006-03-05 15:35:00
谢谢 

mnbvcx5z [ 7 楼 ]
2006-03-05 15:49:00
那"dlgOpenFile.DoModal();"有返回值吗?如果有是对所选择文件的指针吗? 

tianyuan008 [ 8 楼 ]
2006-03-05 16:23:00
有返回值,类型是 int , 表示用户点击了哪个命令按扭.如果用户点击了 OK 按扭(中文系统的确定按扭)则返回值是 IDOK (命名常量).如果用户点击了 Cancel 按扭(中文系统的取消按扭)则返回值是 IDCANCEL . 

mnbvcx5z [ 9 楼 ]
2006-03-05 17:17:00
好的,太谢谢你了,问题解决了