#include <QtGui/QImage>
#include <QtGui/QPixmap>
void getSystemIcon(const chConstStringA& fileType, xPixmap& dst)
{
if (fileType.empty())
{
return;
}
CoInitialize(NULL);
SHFILEINFOA sfi = { 0 };
// 除了SHGFI_ICON之外还有SHGFI_LARGEICON(大图标), SHGFI_SMALLICON(小图标)
SHGetFileInfoA(fileType.c_str(), 0, &sfi, sizeof(sfi), SHGFI_USEFILEATTRIBUTES | SHGFI_ICON);
QImage image;
if (sfi.hIcon != NULL)
{
QPixmap pixIcon = QPixmap::fromWinHICON(sfi.hIcon);
if (!pixIcon.isNull())
{
image = pixIcon.toImage();
image = image.scaled(QSize(30, 30), Qt::KeepAspectRatio);
dst.loadFromPixelData((xPixel*)image.constBits(), image.width(), image.height());
}
DestroyIcon(sfi.hIcon);
}
CoUninitialize();
}

最新文章

  1. [转]NopCommerce How to code my own payment method
  2. Objective-C 利用OC的消息机制,使用Method Swizzling进行方法修改
  3. 为GDI函数增加透明度处理
  4. EasyUI DataGrid分页数据绑定
  5. 简单的ftpserver设置
  6. objective-c 中数据类型之中的一个 几何数据类型(CGPoint,CGSize,CGRect)
  7. .Net中Web增加加密狗管理
  8. Android解析中国天气接口JSon数据,应用于天气查询!
  9. Java-ServletContextListener
  10. Jenkins 集群搭建
  11. 【MySQL】sql_mode引起的一个问题和总结
  12. XSplit Quality, VBV-Buffer, VBV-Maxrate and Preset Settings
  13. 方法名太多,使用方法的重载(overload)来解决
  14. 雷林鹏分享:jQuery EasyUI 表单 - 格式化下拉框
  15. UI5-学习篇-9-本地Eclipse UI5应用发布到SAP前端服务器
  16. [转载]Core Elements of a Program
  17. c++中的复合类型
  18. tapd
  19. python 生成图表
  20. Spinner的用法

热门文章

  1. 剑指offer-二叉树的深度
  2. 共享onload事件
  3. C# 计算两个字符串的相似度
  4. [转载]python操作excel使用win32com
  5. C# 基础排序与查找算法
  6. 三维场景中使用BillBoard技术
  7. Cordova webapp实战开发(20161207 )
  8. GET与POST的区别
  9. ios硬件编码
  10. Hadoop HDFS编程 API入门系列之RPC版本2(九)