?? zfiledialog.h
字號:
/*++++++++++++++++++++++++ Copyright (c) 2006 ++++++++++++++++++++++++
程序作者:
張魯奪(zhangluduo) : 為所有愛我的人和我愛的人努力!
聯系方式:
zhangluduo@msn.com
[oopfans]群:34064264
修改時間:
2007-03-03
功能描述:
利用Win32API調用系統公用對話框(文件打開,保存,目錄選擇..)
版權聲明:
許可任何單位,個人隨意使用,拷貝,修改,散布及出售這份代碼,但是必須保
留此版權信息,以慰藉作者辛勤的勞動,及表明此代碼的來源,如若此份代碼
有任何BUG,請通知作者,以便彌補作者由于水平所限而導致的一些錯誤和不
足,謝謝!
++++++++++++++++++++++++ Copyright (c) 2006 ++++++++++++++++++++++++*/
#ifndef _ZFILEDIALOG
#define _ZFILEDIALOG
#pragma warning(disable:4786)
#include <string>
#include <deque>
#include <functional>
#include <algorithm>
using namespace std;
#include "ZThunk.h"
#include "ZSysInfo.h"
#include <io.h>
class ZFileDialog
{
public:
ZFileDialog();
virtual ~ZFileDialog();
private:
ZThunk m_thunk;
ZSysInfo m_sysinfo;
struct OPENFILENAMEEX : public OPENFILENAME
{
void* pvReserved;
DWORD dwReserved;
DWORD FlagsEx;
};
public:
//選擇目錄
string GetSelectDirectory(HWND hwnd,const char* szTitle="Please select directory");
private:
// 文件打開對話框的回調過程,用于使打開或保存對話框居中
UINT_PTR OFNHookProc(HWND hdlg,UINT uiMsg,WPARAM wParam,LPARAM lParam);
public:
/*********************************************************
選擇文件(單選或多選)
ultiSelect文件是否可以多選
Filter文件類型過濾
備 注:例:Filter=="所有文件 (*.*)\0*.*\0文本文件 (*.txt)\0*.txt\0\0";
*********************************************************/
deque<string> GetOpenFileName(HWND hwnd,bool MultiSelect,const char* szFilter);
/*********************************************************
獲取用戶保存的文件名
AutoAddSuffixName是否自動添加保存的文件后綴名(根據文件框的過濾下拉框添加)
Filter文件類型過濾
備 注:例:Filter=="所有文件 (*.*)\0*.*\0文本文件 (*.txt)\0*.txt\0\0";
*********************************************************/
string GetSaveFileName(HWND hwnd,bool AutoAddSuffixName,const char* szFilter);
};
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -