文档介绍:IT-Homer 专栏
成功是优点的发挥,失败是缺点的积累! 不为失败找理由,只为成功找
方法……
VC怎样把一副自己画的图存成BMP格式和在VC++下实现高彩色工具条
分类: C/C++/C# 2009-12-12 13:28 726人阅读评论(0) 收藏举报
VC怎样把一副自己画的图存成BMP格式
int SaveBmp(HANDLE hData,LPSTR filename)
{
BITMAPFILEHEADER bfh;
BITMAPINFOHEADER *lpbi=(BITMAPINFOHEADER*)hData;
=0x4D42; //BM
=sizeof(bfh)+GlobalSize(hData);
==0;
int colors=1<biBitCount;
if(colors>256) colors=0;
=sizeof(bfh)+lpbi->biSize+colors*sizeof(RGBQUAD);
HANDLE hFile=CreateFile(filename,GENERIC_WRITE
,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile)
{
DWORD write;
WriteFile(hFile,&bfh,sizeof(bfh),&write,NULL);
WriteFile(hFile,lpbi,GlobalSize(hData),&write,NULL);
int i=sizeof(hData);
CloseHandle(hFile);
return true;
}
return false;
}
 
转载声明:本文转自./blog/static/38245714200962910294950/
===================================================================
 
在VC++下实现高彩色工具条
 
引言
一些Windows系统自带程序如资源管理器、 Explorer等程序的工具条看上去和其他一些程序的工具条不太
一样,在颜色上要漂亮许多。其实这些程序的工具条上的图标均为256色,而普通应用程序在工具栏上所显示图标的
颜色通常只有16色,这就决定了后者在视觉上远没有前者美观。由于Windows随系统而带的程序也是由开发人员编写
的应用程序,这就说明通过程序编码可以实现256色甚至更多色彩的图标在工具栏上的显示。为此笔者经过摸索,通
过MFC编程在应用程序中实现了高彩色工具条。现将实现的主要方法介绍如下,以飨广大读者。
基本设计思路
在实现高彩色工具条之前,先研究一下普通16色的工具条的实现过程,并从中总结出改进方法。在VC的资源视图中
工具条是一个资源名为IDR_MAINFRAME的Toolbar型资源,并可通过在编辑按钮上的图标来完成工具条上图标的绘