當前位置:編程學習大全網 - 編程語言 - 我用vb做了壹個瀏覽器。怎麽才能實現旋轉效果?

我用vb做了壹個瀏覽器。怎麽才能實現旋轉效果?

用VB6.0實現圖片旋轉

用過ACDSEE的朋友壹定對它的JPG圖像旋轉功能記憶猶新。事實上,我們可以旋轉任何格式的圖像文件(包括JPG,GIF,BMP,ICO等。)在45度和180度通過使用VB6的高級功能,真的可以和ACDSEE抗衡。

啟動vb6構建壹個標準的exe項目。首先添加兩個圖片框(picture1和picture2),並添加三個命令按鈕:command1(caption= "正常顯示")、Command2 (caption = "180度倒立")和Command3 (caption = "45度旋轉")。

PrivateConstSRCCOPY = & ampHCC0020

PrivateConstPi=3.14

privatdeclarefunctionsetpixellib " GDI 32 "(ByValhdcAsLong,ByValxAsLong,ByValyAsLong,ByValcrColorAsLong)AsLong

privatedeclaurefunctiongetpixellib " GDI 32 "(ByValhdcAsLong,ByValxAsLong,ByValyAsLong)AsLong

privatdeclarefunctionstretchbltlib " GDI 32 "(ByValhdcAsLong、ByValxAsLong、ByValyAsLong、ByValnWidthAsLong、ByValnHeightAsLong、ByValhSrcDCAsLong、ByValxSrcAsLong、ByValySrcAsLong、ByValnSrcWidth AsLong、ByValnSrcHeightAsLong、ByValdwRopAsLong)AsLong

PrivateSubBMP _ rotate(pic 1 as PictureBox,PIC2AS PictureBox,ByvalTheta)' 45度旋轉。

dimc 1x as整數,c 1ya整數

Dimc2xAsInteger,c2yAsInteger

迪馬辛格

dimp 1x a整數,p 1ya整數

Dimp2xAsInteger,p2yAsInteger

DimnAsInteger,rAsInteger

c1x=pic1。刻度寬度\2

c1y=pic1。ScaleHeight\2

c2x=pic2。刻度寬度\2

c2y=pic2。ScaleHeight\2

Ifc2x & ltc2yThenn=c2yElsen=c2x

n=n-1

pic1hDC=pic1.hdc

pic2hDC=pic2.hdc

Forp2x = 0Ton

Forp2y = 0Ton

ifp2x = 0 thena = Pi/2 elsea = Atn(p2y/p2x)

r = Sqr(1 & amp;p2x * p2x+1 & amp;*p2y*p2y)

p 1x = r * Cos(a+θ)

p1y=r*Sin(a+theta)

c0 & amp=GetPixel(pic1hDC,c1x+p1x,c1y+p1y)

c1。=GetPixel(pic1hDC,c1x-p1x,c1y-p1y)

c2 & amp=GetPixel(pic1hDC,c1x+p1y,c1y-p1x)

c3 & amp=GetPixel(pic1hDC,c1x-p1y,c1y+p1x)

Ifc0 & amp& lt& gt-1ThenSetPixelpic2hDC,c2x+p2x,c2y+p2y,c0

Ifc1。& lt& gt-1ThenSetPixelpic2hDC,c2x-p2x,c2y-p2y,c1

Ifc2 & amp& lt& gt-1ThenSetPixelpic2hDC,c2x+p2y,c2y-p2x,c2

Ifc3 & amp& lt& gt-1ThenSetPixelpic2hDC,c2x-p2y,c2y+p2x,c3

然後

然後

末端接頭

私有子命令1 _ click()'普通副本

圖片2。Cls

px=Picture1。刻度寬度

py=Picture1比例尺高度

StretchBltPicture2.hdc,px,0,-px,py,Picture1.hdc,0,0,px,py,SRCCOPY

末端接頭

私人子命令2 _ click ()' 180度倒立

圖片2。Cls

px=Picture1。刻度寬度

py=Picture1比例尺高度

StretchBltPicture2.hdc,0,py,px,-py,Picture1.hdc,0,0,px,py,SRCCOPY

末端接頭

私有子命令3 _ click ()' 45 rotate

圖片2。Cls

Callbmp_rotate(圖片1,圖片2,3.14/4)

末端接頭

PrivateSubForm_Load()

onErrorResumeNext

我。Caption=App。Title "添加應用程序標題。

我。Left=(屏幕。寬度-我。寬度)/2

我。top =(屏幕。身高-我。高度)/2英寸。

圖片1。ScaleMode=3

圖片2。ScaleMode=3

末端接頭

  • 上一篇:網格技術的體系結構
  • 下一篇:諸葛亮智激周瑜用壹句話概括選文的主要內容
  • copyright 2024編程學習大全網