在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);
}
擴展資料
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;
}