卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

如何在MFC應(yīng)用程序中獲取文件的圖標(biāo)

創(chuàng)建基于對(duì)話(huà)框的MFC應(yīng)用程序要在MFC應(yīng)用程序中獲取文件的圖標(biāo),首先需要?jiǎng)?chuàng)建一個(gè)基于對(duì)話(huà)框的應(yīng)用程序。我們以一個(gè)名為GetFileIcon的工程為例來(lái)演示。 設(shè)計(jì)對(duì)話(huà)框界面在對(duì)話(huà)框中添加三個(gè)按鈕、

創(chuàng)建基于對(duì)話(huà)框的MFC應(yīng)用程序

要在MFC應(yīng)用程序中獲取文件的圖標(biāo),首先需要?jiǎng)?chuàng)建一個(gè)基于對(duì)話(huà)框的應(yīng)用程序。我們以一個(gè)名為GetFileIcon的工程為例來(lái)演示。

設(shè)計(jì)對(duì)話(huà)框界面

在對(duì)話(huà)框中添加三個(gè)按鈕、一個(gè)編輯框和一個(gè)靜態(tài)文本,其中“打開(kāi)”按鈕將用于選擇文件,“獲取圖標(biāo)”按鈕將用于獲取選定文件的圖標(biāo)。

實(shí)現(xiàn)“打開(kāi)”按鈕響應(yīng)函數(shù)

為“打開(kāi)”按鈕建立響應(yīng)函數(shù)OnOpen(),在該函數(shù)中添加代碼來(lái)實(shí)現(xiàn)選擇文件并將文件路徑存儲(chǔ)起來(lái)。

```cpp

void CGetFileIconDlg::OnOpen()

{

CString strFilter "All Files(*.*)|*.*||";

CFileDialog dlg(TRUE, NULL, NULL, OFN_EXPLORER | OFN_HIDEREADONLY | OFN_ENABLESIZING | OFN_FILEMUSTEXIST, strFilter);

if (() IDOK)

{

m_filename ();

}

UpdateData(false);

}

```

實(shí)現(xiàn)“獲取圖標(biāo)”按鈕響應(yīng)函數(shù)

為“獲取圖標(biāo)”按鈕建立響應(yīng)函數(shù)OnGeticon(),在該函數(shù)中添加代碼來(lái)獲取選定文件的圖標(biāo)并顯示在靜態(tài)控件上。

```cpp

void CGetFileIconDlg::OnGeticon()

{

UpdateData(true);

SHFILEINFO shfi;

memset(shfi, 0, sizeof(shfi));

SHGetFileInfo(m_filename, FILE_ATTRIBUTE_NORMAL, shfi, sizeof(SHFILEINFO), SHGFI_ICON);

CStatic *pStatic (CStatic*)GetDlgItem(IDC_STATIC1);

pStatic->ModifyStyle(0xF, SS_ICON|SS_CENTERIMAGE);

pStatic->SetIcon(shfi.hIcon);

}

```

運(yùn)行程序并測(cè)試

運(yùn)行程序后,點(diǎn)擊“打開(kāi)”按鈕選擇一個(gè)文件,然后點(diǎn)擊“獲取圖標(biāo)”按鈕,就可以看到所選文件的圖標(biāo)顯示在靜態(tài)控件中。

通過(guò)以上步驟,您可以在MFC應(yīng)用程序中輕松獲取指定文件的圖標(biāo),并實(shí)現(xiàn)簡(jiǎn)單而實(shí)用的功能。

標(biāo)簽: