CFileDialog opendlg(true,NULL,NULL,OFN_FILEMUSTEXIST,"Text Files (*.txt)|*.txt|All Files (*.*)|*.*||",NULL);
if (opendlg.DoModal() == IDOK)
{
strFileName = opendlg.GetPathName();
ShellExecute(GetSafeHwnd(),"open",strFileName,NULL,NULL,SW_SHOWNORMAL);
}
其中 CFileDialog 是MFC中的类,opendlg是自己随便起的对象名,其后的一堆为初始化对象,最简单的只要第一个参数true也可以(false为保存对话框)。opendlg.DoModal() 会显示对话框,若返回ok则进行文件打开。更具体可参加百科http://baike.baidu.com/view/1298552.htm
ShellExecute是一个API函数,功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。具体参看百科
http://baike.baidu.com/view/1044533.htm
GetSafeHwnd()用于得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND),本来还要指明对象会其指针的,如pwnd->GetSafeHwnd()但在这里可能是由于正在使用这个对象,就默认是取其指针吧。http://baike.baidu.com/view/1217951.htm
联系客服