Ⅰ 鍦∕FC 浣跨敤GDI+ 璋幂敤涓寮燩NG 锲剧墖浣夸箣鎴愪负 鑳屾櫙锲剧墖
鍦ㄥ伐绋媠tdafx.h涓娣诲姞濡备笅浠g爜锛屽叧镵擥DI+锛
#include "GdiPlus.h"
using namespace Gdiplus;
#pragma comment(lib,"gdiplus.lib")鍦ㄧ▼搴忓埯濮嫔寲閮ㄥ垎锛屽硅瘽妗嗗伐绋嬫槸鍦╰est.cpp涓锷犲叆涓嬮溃浠g爜锛岃呰浇GDI+:
BOOL CtestApp::InitInstance() //鍦ㄨ繖涓鍑芥暟涓锷犲叆
{ 銆伞伞伞
AfxEnableControlContainer();
//瑁呰浇GDI+
GdiplusStartupInput m_gdiplusStartupInput;
ULONG_PTR m_pGdiToken;
GdiplusStartup(&m_pGdiToken,&m_gdiplusStartupInput,NULL);
銆伞伞伞伞
//鍗歌浇GDI+
GdiplusShutdown(m_pGdiToken);
return FALSE; //杩欎竴鍙ユ槸镊锷ㄧ敓鎴愮殑浠g爜
}
3.鍦∣nPaint()鍑芥暟镄别lse涓娣诲姞濡备笅浠g爜锛
else
{
CDC *pDC;
pDC =GetDC();
CRect rect;
GetClientRect(&rect); //銮峰彇瀹㈡埛鍖哄ぇ灏
Graphics graphics( pDC->m_hDC);
Image image(_T("res\bkg.png"), FALSE);
graphics.DrawImage(&image, 0, 0, rect.right, rect.bottom); //缁桦埗鑳屾櫙
CDialogEx::OnPaint();
}
Ⅱ 能举例在c++中添加一张背景图片吗
在onpaint()中
if(IsIconic())
{
.......//系统代码,不修改
}
else//在else中增加如下代码,对JPG,BMP,PNG(背景透明图片)有效
{
CRectrc;
GetClientRect(rc);
CImageimage;
image.Load(_T("c:\1.jpg"));//图片文件路径
if(image.GetBPP()==32)
{
inti;intj;
for(i=0;i<image.GetWidth();i++)
{
for(j=0;j<image.GetHeight();j++)
{
byte*pByte=(byte*)image.GetPixelAddress(i,j);
pByte[0]=pByte[0]*pByte[3]/255;
pByte[1]=pByte[1]*pByte[3]/255;
pByte[2]=pByte[2]*pByte[3]/255;
}
}
}
image.Draw(GetDC()->m_hDC,rc);
}
(2)mfcpng背景图片扩展阅读
C++插入图片,音乐,文字
#include<graphics.h>//画布上的一系列操作
#include<time.h>//有个各种时间函数
#include<conio.h>//按键操作
#include<mmSystem.h>//播放音乐
#pragmacomment(lib,"winmm.lib")//导入winmm.lib库
intmain()
{
/**图片**/
initgraph(800,600);//展开画布
IMAGEimg;//类似于"inta",此是定义一个图片变量
loadimage(&img,"最爱头像.jpg",800,600);//加载图片
/**把图片放入windows资源管理器打开的文件夹时不需要写地址**/
/**写地址时''都要写成'\'**/
putimage(0,0,&img);//(x,y,取地址)
/**音乐**/
mciSendString(TEXT("openMonBet.mp3aliasmusic"),0,0,0);
//open-操作方式,alias--定义了该操作的别名为music
mciSendString(TEXT("playmusic"),0,0,0);
/**文字**/
setbkmode(0);//去掉文字背景
settextcolor(YELLOW);//设置文字颜色
settextstyle(40,0,TEXT("楷体"));//(高,宽<0为自适应>,字体)
outtextxy(200,150,TEXT("最帅的男人"));//(x,y,内容)
//设置炫彩文字****************---就是颜色的循环
srand((unsigned)time(NULL));
while(!kbhit())//检测按键函数,输入按键返回1,不输返回0,我们这里要相反的
{
setcolor(RGB(rand()%256,rand()%256,rand()%256));
//RGB是三原色红,绿,蓝,颜色范围是0~255
outtextxy(200,250,"去掉TEXT就是这样哦");
Sleep(100);//暂停100ms
}
while(1);
return0;
}
Ⅲ 濡备綍鍦∕FC閲屾樉绀簆ng锲剧墖鎴栬儗鏅阃忔槑镄刡mp锲剧墖
鏄剧ずpng锲剧墖鍙鍝琛浠ヤ娇鐢╣di+鎴栬卆tl閲岄溃镄勬柟娉
阃忔槑鑳屾櫙bmp镄勮瘽浣跨敤 TransparentBlt 鏂规硶锛岃繖涓锏惧害鐗╁瀷涓涓嬬湅𨱒庤殏鑵斾竴涓嬫庝箞鐢
娉ㄦ剰涓涓嬭繖涓鏂规硶鍖呭惈鍦╩simg32.dll涓锛屼娇鐢
#pragma comment( lib, "msimg32.lib" )
𨱒ヨ繛鎺ヨ繖涓搴