WEB开发网
开发学院软件开发VC 在打开文件对话框上实现图象预览 阅读

在打开文件对话框上实现图象预览

 2010-06-15 20:40:25 来源:WEB开发网   
核心提示:lpTemplateName :指向一个以对话框模板资源命名的字符串(以NULL结尾),该对话框模板在模块中由hInstance成员标识,注意:如果想指定一个对话框模板资源必须在Flags中设定OFN_ENABLETEMPLATE,在打开文件对话框上实现图象预览(4),如: m_ofn.lpTemplateName =

lpTemplateName :

指向一个以对话框模板资源命名的字符串(以NULL结尾),该对话框模板在模块中由hInstance成员标识。注意:如果想指定一个对话框模板资源必须在Flags中设定OFN_ENABLETEMPLATE。

如: m_ofn.lpTemplateName = MAKEINTRESOURCE(IDD_DIALOG_HOOK)。

4、定制个性的CFileDialog对话框:

这个对Win98下的对话框用处比较大(个人观点),我在这里不详细的说明只是给大家一个链接:http://www.codesky.net/article/list.asp?id=3920只要在CFileDialogEX dlg(TRUE)后面,加上如下代码,就可以显示图2效果。

    //--------只要加上下面这段代码,就可以显示2000下的打开文件对话框-------------
//------用来检测目前的操作系统的版本信息
int nStructSize = 0;
DWORD dwVersion, dwWindowsMajorVersion, dwWindwosMinorVersion;
dwVersion = GetVersion();
dwWindowsMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion)));
dwWindwosMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion)));
if(dwVersion < 0x80000000)
{
nStructSize = 88; //2k,xp下显示新的版本
}
else
{
nStructSize = 76; //98下显示老版本,如图1
}
dlg.m_ofn.lStructSize = nStructSize; //------用来检测目前的操作系统的版本信息

3、m_ofn成员及OPENFILENAME的介绍:

OPENFILENAME结构体:虽然成员变量不少,但是我们常用的就几个而已!该结构体包含一些保存或打开文件对话框的重要信息,比如过滤文件名,指定初始化路径,对文件进行多选,显示98风格还是2000风格的open/save对话框!

typedef struct tagOFN { // ofn
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCTSTR lpstrFilter;
LPTSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPTSTR lpstrFile;
DWORD nMaxFile;
LPTSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCTSTR lpstrInitialDir;
LPCTSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCTSTR lpstrDefExt;
DWORD lCustData;
LPOFNHOOKPROC lpfnHook;
LPCTSTR lpTemplateName;
} OPENFILENAME;
Members

lStructSize :

指定OPENFILENAME结构体的大小(字节)。这个决定你的对话框显示98风格,还是2k风格。

hwndOwner :

指定拥有该对话框的窗口的标识,可以是任何有效窗口的句柄,也可以为空。

上一页  1 2 3 4 5 6 7  下一页

Tags:打开 文件 对话框

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接