![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
![]() |
#1 |
版區管理員
![]() |
![]() 請先用編輯軟體將不顯示部分塗成藍色(Blue)
然後再表單上插入一個TImage物件,載入這張圖 然後再Form1的OnActivate事件填入 語法:
void __fastcall TForm1::FormActivate(TObject *Sender) { HRGN rgn1,rgn2; int x,y,startx,endx; if(rgn1!=0)DeleteObject(rgn1); rgn1=0; LockWindowUpdate(Handle); for(y=0;y<Image1->Height-1;y++) { x=0; startx=0; endx=x; do { while((Image1->Canvas->Pixels[x][y]==clBlue)&&(x<=Image1->Width)){x++;} startx=x; x++; while((Image1->Canvas->Pixels[x][y]!=clBlue)&&(x<=Image1->Width)){x++;} endx=x; if(startx!=Image1->Width) { if(endx==Image1->Width)endx--; if(rgn1==0) { rgn1=CreateRectRgn(startx+1,y,endx,y+1); } else { rgn2=CreateRectRgn(startx+1,y,endx,y+1); if(rgn2!=0) { CombineRgn(rgn1,rgn1,rgn2,RGN_OR); } DeleteObject(rgn2); } } }while(x<Image1->Width-1); } LockWindowUpdate(0); SetWindowRgn(Handle,rgn1,true); } //--------------------------------------------------------------------------- 語法:
void __fastcall TForm1::Image1DblClick(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- |
![]() |
送花文章: 1540,
![]() |