国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

win32使用openfilename瀏覽文件窗口示例

2020-01-26 15:36:35
字體:
來源:轉載
供稿:網友

代碼如下:

復制代碼 代碼如下:

OPENFILENAME ofn;
WCHAR* szFile = new WCHAR[512];
WCHAR* szFileTitle = new WCHAR[512];
memset(&ofn, 0, sizeof(ofn));
memset(szFile, 0, sizeof(WCHAR)*512);
memset(szFileTitle, 0, sizeof(WCHAR)*512);

ofn.lStructSize = sizeof(ofn);
ofn.hwndOwner = yMain->m_hWnd;
ofn.hInstance = yMain->m_hInst;
ofn.lpstrFilter = L"All File/0*.*/0";
ofn.nFilterIndex = 1;
ofn.lpstrFile = szFile;
ofn.nMaxFile = sizeof(WCHAR)*512;
ofn.lpstrFileTitle = szFileTitle;
ofn.nMaxFileTitle = sizeof(WCHAR)*512;
ofn.Flags = OFN_FILEMUSTEXIST | OFN_EXPLORER;

// 按下確定按鈕
BOOL ok = GetOpenFileName(&ofn);
if( ok ){
MessageBox(hWnd, L"23", L"44", MB_OK);
}

delete []szFile;
delete []szFileTitle;

其中,有個地方需要注意一下,要是不使用以下的處理話,會出現無法彈出瀏覽窗口界面的問題:

復制代碼 代碼如下:

WCHAR* szFile = new WCHAR[512];
WCHAR* szFileTitle = new WCHAR[512];

關于這兩個變量,最好就需要先分配空間,如果直接定義為數組的話,就會導致瀏覽文件的窗口彈不出來。原因在于,這兩個變量是局部變量,定義為數組的話,空間占用太大了,無法自動分配出來,需要專門分配內存才行。
上述代碼在debug和release版中都測試過,可以正常的彈出打開的窗口。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 南昌县| 会东县| 济南市| 云和县| 永胜县| 岱山县| 陇南市| 龙州县| 长子县| 上饶县| 靖安县| 盘山县| 张家川| 庆城县| 喀什市| 贵德县| 吉安市| 神木县| 灌南县| 会理县| 金秀| 四会市| 东台市| 林州市| 米易县| 扶绥县| 安远县| 根河市| 集贤县| 吉安县| 晋江市| 桑日县| 平利县| 江西省| 德令哈市| 延津县| 石城县| 黑龙江省| 射阳县| 卢湾区| 西盟|