欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++ 控制臺彈出文件管理對話框案例

 更新時間:2021年01月13日 10:53:27   作者:汪蛋  
這篇文章主要介紹了C++ 控制臺彈出文件管理對話框案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在控制臺程序中打開文件管理對話框,效果圖如下所示:

在需要彈出對話框的地方插入以下代碼:

//打開文件管理窗口
 TCHAR szBuffer[MAX_PATH] = { 0 };
 OPENFILENAME file = { 0 };
 file.hwndOwner = NULL;
 file.lStructSize = sizeof(file);
 file.lpstrFilter = _T("Excel文件(*.xlsx,*.xls)\0*.xlsx;*.xls\0Txt文件(*.txt)\0*.txt\0");//要選擇的文件后綴
 file.lpstrInitialDir = _T("C:\\");//默認的文件路徑 
 file.lpstrFile = szBuffer;//存放文件的緩沖區(qū)
 file.nMaxFile = sizeof(szBuffer) / sizeof(*szBuffer);
 file.nFilterIndex = 0;
 file.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_EXPLORER;//標志如果是多選要加上OFN_ALLOWMULTISELECT
 BOOL bSel = GetOpenFileName(&file);

補充:c如何彈出保存路徑/保存文件對話框

我就廢話不多說了,大家還是直接看代碼吧~

//保存路徑
TCHAR szBuffer[MAX_PATH] = {0}; 
 BROWSEINFO bi; 
 ZeroMemory(&bi,sizeof(BROWSEINFO)); 
 bi.hwndOwner = NULL; 
 bi.pszDisplayName = szBuffer; 
 bi.lpszTitle = _T("選擇保存文件路徑:"); 
 bi.ulFlags = BIF_RETURNFSANCESTORS;
 LPITEMIDLIST idl = SHBrowseForFolder(&bi); 
 if (NULL == idl) 
 { 
  return 0; 
 } 
 SHGetPathFromIDList(idl,szBuffer);
 
//保存對話框;
 TCHAR szFilters[]= _T("*.csv");
 CFileDialog dlg(FALSE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilters);
 if(IDOK==dlg.DoModal())
 {
 //現在的當前路徑變成了所打開文件時的路徑,故只需要拿到文件名即可對文件進行操作;
 TCHAR curPath[MAX_PATH];
 GetCurrentDirectory(MAX_PATH,curPath); //可以拿到當前文件夾的路徑,此時curPath就是當前文件所處的路徑,變成了當前路徑;
 }
//保存文件

補充:C++控制臺程序彈出消息框

#include "stdafx.h"
#include<windows.h>
//不顯示控制臺
#pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" )
int main()
{
 int x=::MessageBox(NULL, TEXT("將在20秒后關機,確定執(zhí)行嗎?"), TEXT("操作提示"), 1);
 if (x==1)
 {
 //確認關機
 system("shutdown /s /t 20");
 }
 printf("%d\n", x);
 return 0;
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

  • 詳解約瑟夫環(huán)問題及其相關的C語言算法實現

    詳解約瑟夫環(huán)問題及其相關的C語言算法實現

    這篇文章主要介紹了詳解約瑟夫環(huán)問題及其相關的C語言算法實現,也是ACM當中經常會引用到的基礎題目,文中共介紹了三種C語言解答,需要的朋友可以參考下
    2015-08-08
  • C++ COM編程之什么是組件?

    C++ COM編程之什么是組件?

    這篇文章主要介紹了COM編程之什么是組件?COM組件是以Win32動態(tài)鏈接庫(DLLs)或可執(zhí)行文件(EXEs)的形式發(fā)布的可執(zhí)行代碼,需要的朋友可以參考下
    2014-10-10
  • C到C++的升級關系及區(qū)別實例探究

    C到C++的升級關系及區(qū)別實例探究

    這篇文章主要為大家介紹了C到C++的升級關系及區(qū)別實例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • C++調用Go方法的字符串傳遞問題及解決方案

    C++調用Go方法的字符串傳遞問題及解決方案

    這篇文章主要介紹了C++調用Go方法的字符串傳遞問題及解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • C++中auto_ptr智能指針的用法詳解

    C++中auto_ptr智能指針的用法詳解

    這篇文章主要介紹了C++中auto_ptr智能指針的用法詳解的相關資料,需要的朋友可以參考下
    2016-07-07
  • C語言實現簡單的三子棋游戲源碼

    C語言實現簡單的三子棋游戲源碼

    這篇文章主要為大家詳細介紹了C語言實現簡單的三子棋游戲源碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 利用Matlab制作一款3D版2048小游戲

    利用Matlab制作一款3D版2048小游戲

    2048作為一款經典的小游戲,相信很多人都玩過吧?但是3D版的2048不知道有沒有人玩過呢?本文將用Matlab制作一個3D版的2048小游戲,快跟隨小編一起動手試一試吧
    2022-02-02
  • Linux網絡編程之socket文件傳輸示例

    Linux網絡編程之socket文件傳輸示例

    這篇文章主要介紹了Linux網絡編程之socket文件傳輸示例,對于基于Linux平臺的C程序員來說有一定的借鑒價值,需要的朋友可以參考下
    2014-08-08
  • C語言實現猜數字小游戲

    C語言實現猜數字小游戲

    這篇文章主要介紹了C語言實現猜數字小游戲,附有詳細代碼,需要的小伙伴可以參考一下,希望對你的遼西有所幫助
    2021-10-10
  • C++ 動態(tài)數組模版類Vector實例詳解

    C++ 動態(tài)數組模版類Vector實例詳解

    這篇文章主要為大家詳細介紹了C++動態(tài)數組模版類Vector實例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02

最新評論