用C++Builder获取应用程序图标
敬业的IT人
互联网
佚名
2008-1-3 21:40:45
现在,网上有大量的有关图标的共享软件或免费软件,而且很多也很好用,也方便。但是那毕竟是别人的,用起来总有些哪个,况且自己又喜欢编程,何不自己动手呢!说干就干,而且手头上有可视化编成的利器――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控件中显示了出来。本程序所用的是WindowsAPI ExtractIcon来获取图表的,因此它只能获取可执行文件的图标,如果想获取任意文件的图标,那末你可以调用Windows API 的SHGetFileInfo函数来完成,SHGetFileInfo所能完成的任务有很多,具体用法可参见Win32的帮助文件。
- 最新文章
- 用C++ Builder在WINNT下编制一个Service[01-03]
- 用C++ Builder实现网络连接检测程序[01-03]
- 用C++ Builder编程实现串行通信[01-03]
- 用C++ Builderw做Ftp服务器程序[01-03]
- 用C++ Builder 编写定时关机程序[01-03]
- 用C++ Builder 5.0编HOOK程序[01-03]
- 相关文章
- C++ Builder的几则小应用[01-03]
- BCB不让应用程序显示在任务栏上的方法[01-03]
- 不规则窗体的应用增加软件的吸引力[01-03]
- C++ Builder 设计应用程序[01-03]
- C++ Builder 调试多线程应用程序[01-03]
- C++ Builder 创建分布式应用程序[01-03]
