如何在VB6中實現文字「打屏」及霓虹燈效果

2022-03-09 14:14:08 字數 3171 閱讀 5699

在看電影或電視時我們有時會看到有些片名乙個乙個的字由大到小列印到螢幕上(或是片名整齊的由大到小列印到螢幕上),俗語稱"打屏"。並且有時文字顏色會不斷變化,出現霓虹燈效果,閃爍亮晶晶,煞是好看。

如果你是用vb6來開發軟體的話,假如能把它應用到你的軟體封面中,讓軟體的名字唰唰唰照打在螢幕上,那種感覺是不是有點......像炎熱的夏天喝了一杯冰水呢。那麼在vb6中如何實現這種效果呢? ok!趕快拔出你的屠龍刀vb6,let go!跟我來吧!(怎麼覺得有點牛刀殺小雞的味道^_^)

首先啟動vb6,新建乙個標準exe工程,新增兩個timer控制項到窗體上,設timer1的interval屬性為1(用於啟動文字打屏),timer2的enabled屬性為false、interval屬性為319(用於文字顏色閃爍速度);再新增五個label控制項label1、label2、label3、label4、label5到窗體上,然後按著ctrl鍵將它們五個選中,設它們的backstyle屬性為0-transparent、font屬性為隸書72號字型(當然也可選其他字型)、forecolor屬性等於&h000080ff&(字型顏色為深黃色)、visible屬性為false(讓它們都不可見),再將五個label控制項按順序分別排列在窗體的中間位置。排在什麼位置都行,只要整齊就行,但注意不能將五個label控制項重疊在一起。再儲存工程。

接下來在form_load()事件中加入**:

dim t as long '定義變數

me.backcolor = &h80000012 '初始化窗體顏色為黑色

me.windowstate = 2 '初始化窗體為全屏執行

'初始化打屏文字

label1.caption = "文"

label2.caption = "字"

label3.caption = "演"

label4.caption = "示"

label5.caption = "!"

在timer1_timer()事件中加入以下**:

打屏效果控制

定義文字的字型大小

label8.fontsize = 960

label9.fontsize = 960

label10.fontsize = 960

label11.fontsize = 960

label12.fontsize = 960

通過迴圈語句製造文字由大到小的效果,當文字大小小於或等於72時停止迴圈

label8.visible = true

for t = 1 to 120

label8.fontsize = label8.fontsize - 8

if label8.fontsize < = 72 then

label8.fontsize = 72

label9.visible = true

exit for

end if

next t

for t = 1 to 120

label9.fontsize = label9.fontsize - 8

if label9.fontsize < = 72 then

label9.fontsize = 72

label10.visible = true

exit for

end if

next t

for t = 1 to 120

label10.fontsize = label10.fontsize - 8

if label10.fontsize < = 72 then

label10.fontsize = 72

label11.visible = true

exit for

end if

next t

for t = 1 to 120

label11.fontsize = label11.fontsize - 8

if label11.fontsize < = 72 then

label11.fontsize = 72

label12.visible = true

exit for

end if

next t

for t = 1 to 120

label12.fontsize = label12.fontsize - 8

if label12.fontsize < = 72 then

label12.fontsize = 72

timer1.enabled = false

timer2.enabled = true

exit for

end if

next t

再在timer2_timer() 事件中加入字型霓虹燈效果的**:

霓虹燈效果設定

dim x as integer, y as integer, z as integer '定義變數

設定字型顏色的隨機效果

x = int(rnd * (255))

y = int(rnd * (255))

z = int(rnd * (255))

label8.forecolor = rgb(x, y, z)

x = int(rnd * (255))

y = int(rnd * (255))

z = int(rnd * (255))

label9.forecolor = rgb(x, y, z)

x = int(rnd * (255))

y = int(rnd * (255))

z = int(rnd * (255))

label10.forecolor = rgb(x, y, z)

x = int(rnd * (255))

y = int(rnd * (255))

z = int(rnd * (255))

label11.forecolor = rgb(x, y, z)

x = int(rnd * (255))

y = int(rnd * (255))

z = int(rnd * (255))

label12.forecolor = rgb(x, y, z)

最後不要忘了在form_click()事件中加入"unload me"的語句,以釋放資源。好了!睜大你長時間用眼睛親吻電腦顯示屏而血紅的雙眼,伸出由於長期撫摸鍵盤而進化得象香蕉的手指按f5鍵執行,哇!......大功告成!

如何在VB6中匯出EXCEL FOXPRO格式的表

這麼簡單的方法。不知道太可惜了 select into excel 8.0 database 匯出目錄 匯出表名 from 表 select into foxpro 2.6 database 匯出目錄 匯出表名 from 表 select into foxpro 2.5 database 同上 匯出...

VB6中模擬按鈕的實現

朋友發來乙個 vb6 的小要求 自行繪製按鈕,並且按鈕不能有控制代碼,不得用 image 控制項,需要支援單擊事件,滑鼠移動上去會變化。感覺像個考試題啊!先貼 思路就是 使用 paintpicture 在窗體上作圖,使用mousemove事件判定滑鼠是否在的位置上,如果是則繪製滑鼠移動浮動後的,否則...

VB6實現網路連通檢測

private sub form load if isconnected true then msgbox 您已經連通了inter end if if isconnected false then msgbox 您還沒有連通 inter end if end sub option explicit ...