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

首頁 > 學院 > 開發(fā)設計 > 正文

用VB實現(xiàn)屏幕滾屏保護效果

2019-11-18 17:37:07
字體:
供稿:網(wǎng)友
曾見過這樣一種屏幕保護程序:靜止的屏幕突然整屏上下或左右翻滾起來,這種奇特的屏幕保護效果是如何制造出來的?當我告訴你其中奧妙之后,你也可以利用VB來輕松地“編”出這種效果。下面以上下滾屏為例,說明實現(xiàn)的過程(限于篇幅,這里只給出可直接實現(xiàn)的程序,關于屏幕保護程序的編寫暫不討論):

實現(xiàn)效果一:畫面在漆黑的背景屏幕里滾動,其思路是將整屏畫面抓到一個窗體內(nèi),而將另一個窗體的背景置黑,首先創(chuàng)建兩個窗體forml和form2,置AutoRedraw屬性為True,BorderStyle屬性為None(無邊框),將form2的Backcolor置為黑色。在forml中編制程序如下:
DimScreenhWnd%,ScreenDC%,rc%
′WindowsAPI函數(shù)
DeclareFunctionBitBlt%Lib"GDI"(ByValhDestDC%,ByValdx%,ByValdy%,ByValnWidth%,ByValnHeight%,ByValhSrcDC%,ByValsx%,ByValsy%,ByValdwRop&)
DeclareFunctionGetDesktopWindow%Lib"USER"()
DeclareFunctionGetDC%Lib"USER"(ByValhWnd%)
DeclareFunctionReleaseDC%Lib"USER"(ByValhWnd%,ByValhDC%)

SubForm-Load
′form1窗體大小、位置與屏幕重合
form1Width=ScreenWidth
form1Height=ScreenHeight
form1left=0
form1top=0
′form2窗體大小、位置與屏幕重合
form2Width=ScreenWidth
form2Height=ScreenHeight
form2left=0
form2top=0
′將整屏畫面抓到form1中
ScreenhWnd%=GetDesktopWindow%()
ScreenDC%=GetDC%(ScreenhWnd%)
rc%=BitBlt%(form1hDC,0,0,form1ScaleWidth,form1ScaleHeight,
ScreenDC%,0,0,&HCC0020)
rc%=ReleaseDC%(ScreenhWnd%,ScreenDC%)
′顯示form1和form2
form2Show
form1Show
′上下移動form1
WhileTrue
form1Top=form1Top+500
′500為移動速度
ifform1Top>ScreenHenghtThen
′超出屏幕下界時回到最上面
form1Top=-ScreenHeight
Endif
DoEvents′響應其它事件
Wend
EndSub
′點擊鼠標結束滾幕
SubForm-MouseDown()
End
EndSub
實現(xiàn)效果二:整屏畫面連續(xù)不斷地翻滾。最簡單的一個思路是將整屏畫面抓到兩個一樣的窗體中交替連續(xù)地滾動出現(xiàn),在上述程序的基礎上修改如下:
form2Top=-ScreenHenght
′將form2緊接form1的頂部放置
rc%=BitBlt%(form2hDC,0,0,form2ScaleWidth,form2ScaleHeight,ScreenDC%,0,0,&HCC0020)
′增加此句,將整屏抓到form2中
WhileTrue
form2Top=form2Top+500
Ifform2Top<0Then
form1Top=form2Top+ScreenHeight
′form1在form2下面
Else
form1Top=form2Top-ScreenHeight
′form1在form2上面
EndIf
Ifform2Top>ScreenHeightThen
form2Top=-ScreeenHeight
′form2超出下界時回到最上面
Eenif
DoEvents
Wend->


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 漳浦县| 株洲县| 墨江| 常州市| 江达县| 廉江市| 保靖县| 通河县| 台东县| 神农架林区| 博白县| 仁布县| 老河口市| 湄潭县| 精河县| 柘荣县| 惠水县| 沈丘县| 琼结县| 岑巩县| 苍山县| 红桥区| 万宁市| 沙湾县| 武陟县| 甘德县| 临颍县| 电白县| 廉江市| 高要市| 舒城县| 开原市| 平湖市| 石楼县| 沛县| 宾阳县| 昭觉县| 石景山区| 哈密市| 吴川市| 阿坝县|