程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 用C++Builder獲取應用程序圖標

用C++Builder獲取應用程序圖標

編輯:關於C++

現在,網上有大量的有關圖標的共享軟件或免費軟件,而且很多也很好用,也方便。但是那畢竟是別人的,用起來總有些哪個,況且自己又喜歡編程,何不自己動手呢!說干就干,而且手頭上有可視化編成的利器――C++ Builder4.0,想來應該是很簡單的一件事。

首先啟動C++Builder,新建一工程,在窗體上放置一個Button控件,一個Image控件,和一個OpenDialog控件,它們的名稱均不必改動。雙擊Button控件,寫如下代碼:

if(OpenDialog1->Execute())
{
FileName = OpenDialog1->FileName;
HICON hIcon;
// Total =(int) ExtractIcon( Form1->Handle, FileName.c_str(), -1);
Icon = new TIcon();
hIcon = ExtractIcon( Form1->Handle, FileName.c_str(), 0);
Icon->Handle=hIcon;
Icon->SaveToFile(TempFile);
Image1->Picture->LoadFromFile(TempFile);
}

其中:FileName,TempFile,Icon在其頭文件中定義:

AnsiString  TempFile, FileName;

Ticon *Icon;

這樣,你所選定的程序的第一個圖標就在Image控件中顯示了出來。本程序所用的是Windows API ExtractIcon來獲取圖表的,因此它只能獲取可執行文件的圖標,如果想獲取任意文件的圖標,那末你可以調用Windows API 的SHGetFileInfo函數來完成,SHGetFileInfo所能完成的任務有很多,具體用法可參見Win32的幫助文件。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved