成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

WIN32一些文件及窗口操作-創(chuàng)新互聯(lián)

0,獲取指定的系統(tǒng)路徑:WIN32一些文件及窗口操作

    #include <shlobj.h>
    #pragma comment(lib, "shell32.lib")

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),新泰企業(yè)網(wǎng)站建設(shè),新泰品牌網(wǎng)站建設(shè),網(wǎng)站定制,新泰網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,新泰網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

    TCHAR szPath[MAX_PATH];
  ::SHGetSpecialFolderPath(NULL, szPath, CSIDL_PERSONAL, FALSE);

1,打開文件或選中文件:

BOOL OpenDownFile(const TCHAR* pFilePath, BOOL bOpenCatalogue)
{
    std::wstring wstrPath;
    if (bOpenCatalogue)
    {
        wstrPath.append(L"/n,/select,");
        //打開文件所在目錄,選中指定文件
    }

    wstrPath.append(pFilePath);//沒有/n,/select,參數(shù)的話是直接打開指定文件或目錄
  ShellExecute(NULL, L"open", L"Explorer.exe", wstrPath.c_str(), NULL, SW_SHOWDEFAULT);

    return TRUE;
}

2,文件另存為:
BOOL SaveFileAs(const HWND hWnd, const TCHAR* pDefaultFileName)
{
    std::wstring FileSavePath;
    std::wstring fileNameAll;
    std::wstring wstrPostfix;

    fileNameAll = pDefaultFileName;
    size_t ipoint = fileNameAll.rfind(L".");
    if(ipoint == fileNameAll.npos)//無后綴名
    {
        wstrPostfix.clear();
    }
    else
    {
        wstrPostfix = fileNameAll.substr(ipoint+1);
    }

    TCHAR filename[MAX_PATH] = {0};
  TCHAR pstrFilter[MAX_PATH] = {0};
  wsprintf(pstrFilter,L"%s Files(*.%s)|*.%s|All Files(*.*)|*.*||",wstrPostfix.c_str(),wstrPostfix.c_str(),wstrPostfix.c_str());

    OPENFILENAME ofn;
    ZeroMemory(&ofn, sizeof(ofn));
  wcscpy_s(filename,_countof(filename),fileNameAll.c_str());
  ofn.lpstrFile        = filename;
    ofn.nMaxFile        = MAX_PATH;
    ofn.lpstrFilter        = L"*.*";
    ofn.lpstrDefExt        = wstrPostfix.c_str();
    ofn.lpstrTitle        = L"另存為";
    ofn.Flags        = OFN_HIDEREADONLY | OFN_PATHMUSTEXIST;
    ofn.FlagsEx     = OFN_EX_NOPLACESBAR;
    ofn.lStructSize        = sizeof(OPENFILENAME);
    ofn.hwndOwner        = hWnd;
    ofn.hInstance        = NULL;

    if (::GetSaveFileName(&ofn))
    {
        FileSavePath = filename;
    }
    else
    {
        return FALSE;
    }

    return TRUE;
}

3,選擇文件
#include <commdlg.h>
BOOL SelectFile(std::wstring& strSelectFile )
{
    OPENFILENAME opfn;
    TCHAR strFilename[MAX_PATH];
    ZeroMemory(&opfn, sizeof(OPENFILENAME));
    opfn.lStructSize = sizeof(OPENFILENAME);
    opfn.lpstrFilter = L"pdf Files(*.pdf) *.pdf";//設(shè)置過濾
    opfn.nFilterIndex = 1;
   opfn.lpstrFile = strFilename;
    opfn.lpstrFile[0] = '';
    opfn.nMaxFile = sizeof(strFilename);
    opfn.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST;
    if (::GetOpenFileName(&opfn))
    {
        strSelectFile = strFilename;
    }
    return TRUE;
}

4,文件拖拽

DragAcceptFiles(hWnd, TRUE);

case WM_DROPFILES:
{
  HDROP hDrop = (HDROP)wParam;
  TCHAR szFileName[MAX_PATH];
  int count = DragQueryFile(hDrop, 0xFFFFFFFF, NULL, 0);
  if(count)
  {
    for(int i=0; i<count;i++)
        {
      int pathLen = DragQueryFile(hDrop, i, szFileName,MAX_PATH);
      //Do(szFileName); 

    }
   }
}

 break;

5,透明窗口

SetWindowLong(hWnd, GWL_EXSTYLE, GetWindowLong(m_hwnd, GWL_EXSTYLE) ^ 0x80000);
HINSTANCE hInst = LoadLibrary(L"User32.DLL"); 
if (hInst)
{
    typedef BOOL(WINAPI *MYFUNC)(HWND, COLORREF, BYTE, DWORD);
    MYFUNC fun = NULL;
    fun = (MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");
    if (fun)
        fun(hWnd, 0, 255 / 2, LWA_ALPHA); //半透明
    FreeLibrary(hInst);
}

分享標(biāo)題:WIN32一些文件及窗口操作-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://jinyejixie.com/article42/dcpohc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)云服務(wù)器、網(wǎng)站設(shè)計公司ChatGPT、網(wǎng)站排名定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
丽江市| 越西县| 岢岚县| 灌云县| 汶上县| 蒙山县| 崇左市| 连南| 手游| 佛教| 汪清县| 开平市| 荣成市| 丹东市| 呼图壁县| 庆城县| 蒙山县| 富阳市| 和田县| 普宁市| 太保市| 修武县| 杭锦后旗| 渝中区| 陆河县| 平安县| 大宁县| 安庆市| 南康市| 韶关市| 江永县| 凤庆县| 平塘县| 裕民县| 崇礼县| 涟水县| 商都县| 梨树县| 封开县| 五常市| 新巴尔虎左旗|