国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

任意形狀的窗體

2019-11-17 05:32:09
字體:
來源:轉載
供稿:網友

  Graphics::TBitmap* Spirite=new Graphics::TBitmap();
bool bkey=true;
int iCount=0;
TColor ColorKey=clWhite;
Spirite->LoadFromFile("D://bcbbak//resource//traffic.bmp");
Width=Spirite->Width;Height=Spirite->Height;
for(int i=0;i<Spirite->Height;i++)
{
bkey=true;
for(int j=0;j<Spirite->Width;j++)
{
if(Spirite->Canvas->Pixels[j][i]==ColorKey)
bkey=true;
else{ if(bkey) iCount++; bkey=false;}
}
}
byte* pData;
RGNDATA* PRgnData;
RECT* pRect;
int iIndex=0,iLeft=0;
pData=new Byte[sizeof(RGNDATAHEADER)+sizeof(RECT)*iCount];
pRgnData=(RGNDATA* )pData;
pRect=(RECT* )(pData+sizeof(RGNDATAHEADER));
pRgnData->rdh.dwSize= sizeof( RGNDATAHEADER ) ;
pRgnData->rdh.iType= RDH_RECTANGLES;
pRgnData->rdh.nCount= iCount;
pRgnData->rdh.nRgnSize = sizeof( RECT )*iCount;
pRgnData->rdh.rcBound.left= 0;
pRgnData->rdh.rcBound.top= 0;
pRgnData->rdh.rcBound.right=Spirite->Width;
pRgnData->rdh.rcBound.bottom=Spirite->Height;
for( int i=Spirite->Height-1;i>=0;i--) //因為Bitmap位圖在Y方向是顛倒的所以要從底部開始
{
bkey = TRUE ; iLeft = -1;
for( int j=0;j<Spirite->Width;j++)
{
if(Spirite->Canvas->Pixels[j][i]==ColorKey )
{if( !bkey )
{pRect[iIndex].left =iLeft;
pRect[iIndex].right=j;
pRect[iIndex].top=Spirite->Width-i-1;
pRect[iIndex].bottom=Spirite->Height-i;
bkey=TRUE ;iIndex++ ;iLeft=-1;
}
}
else if(bkey){iLeft=j; bkey=false;}
}
if(iLeft>=0)
{
pRect[iIndex].left=iLeft ;
pRect[iIndex].right=Spirite->Width;
pRect[iIndex].top=i;
pRect[iIndex].bottom=i;
iIndex++;
}
}
bool br=ExtCreateRegion(NULL,sizeof( RGNDATAHEADER )+sizeof(RECT)*iCount,pRgnData);
if(!br) { ShowMessage("Create Form Failed."); Close(); }
delete[] pData;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 航空| 永定县| 石楼县| 太仓市| 龙岩市| 镇康县| 新郑市| 河西区| 中卫市| 新乡县| 嵊州市| 隆德县| 阿拉善左旗| 郎溪县| 田阳县| 定兴县| 霍山县| 兴隆县| 保亭| 大关县| 西畴县| 新建县| 乌拉特后旗| 大丰市| 白玉县| 梁山县| 扎兰屯市| 楚雄市| 博客| 贵溪市| 屯昌县| 隆化县| 枣强县| 亳州市| 花莲市| 迁西县| 海兴县| 济阳县| 昌宁县| 晋城| 安吉县|