电竞比分网-中国电竞赛事及体育赛事平台

分享

在VFP中實(shí)現(xiàn)字符的淡出淡入

 Alkaid2015 2012-12-10
字符淡出淡入效果是指字符從背景色中漸漸顯示出來,或漸漸隱入其中,如果我們能夠在軟件的封面上加入此功能,或作軟件的說明, 定能為軟件增色不少。筆者利用Visual FoxPro(以下簡稱VFP)這種常用的數(shù)據(jù)庫開發(fā)語言,編寫了一段程序,實(shí)現(xiàn)了該功能。

  我們知道,色彩是由三原色(紅、綠、藍(lán))組成,三原色的比例不同 ,所配置出的顏色就會不同。在現(xiàn)實(shí)生活中,三原色中每種色彩的變化是連續(xù)的,因此可以組合出無窮色彩;而在計算機(jī)中,色彩的變化是數(shù)字化的,即離散非連續(xù)的,變化范圍從0~255,共256種情況,因此我們只要控制三原色的變化量,就可以調(diào)配出所需要的色彩。如果我們可以連續(xù)控制三原色的變化量,就可以實(shí)現(xiàn)色彩的連續(xù)變化。

  VFP中有一個函數(shù)RGB(),該函數(shù)可以指定三原色的比例,返回單一的色彩值。該返回值可作為其它控件的前景色或背景色的值,即可賦予控件的forecolor或backcolor屬性。該函數(shù)聲明如下:

  RGB(nRedValue,nGreenValue,nBlueValue)

   其中nRedValue、nGreenValue、nBlueValue分別代表紅、綠、藍(lán)成份的強(qiáng)度,其大小變化范圍是0~255;同時,VFP還提 供了一個功能強(qiáng)大的控件——定時器,它可以按指定的時間執(zhí)行一指定的操作,操作完成后,仍把控制權(quán)交給CPU完成其它工作。我們利用這兩個工具就可以實(shí)現(xiàn)字符的淡出淡入?,F(xiàn)將具體步驟說明如下:

  1.啟動VFP,并生成一個空白的表單。
  2.將表單的backcolor屬性設(shè)置為192、192、192,即表單的背景色設(shè)為灰色。
  3.在表單的Init過程中寫入以下代碼:
   public r,g,b
   r=192
   g=192
   b=192
  4.在表單的Click過程中寫入以下代碼:
   thisform.starttimer.enabled=.f.
   thisform.endtimer.enabled=.t.
  5.在表單中加入一個標(biāo)鑒控制,并設(shè)置其屬性如下:
   BackStyle: 0,表示透明
   Caption : 養(yǎng)老保險基金管理系統(tǒng)
   Forecolor: 192,192,192
   Name : label1
   FontSize : 20
  6.在表單中加入一個定時器控制,并設(shè)置其屬性如下:
   Interval : 80
   Name :
  starttimer
   在timer過程中加入以下代碼:
   if r 255
  r=r+1
   endif
   if b 255
  b=b+1
   endif
   if g 255
  g=g+1
   endif
   thisform.lable1.forecolor=rgb(r,g,b)
   thisform.refresh()
  7.在表單中再加入一個定時器控件,并設(shè)置其屬性如下:
   Enabled : .f.,即假
   Interval : 5
   name
  : endtimer
   在Timer過程中加入以下代碼:
   if r 192
  r = r-1
   endif
   if b 192
  b = b-1
   endif
   if g 192
  g=g-1
   endif
   thisform.label1.forecolor=rgb(r,g,b)
   thisform.refresh()

  完成以上步驟后,將表單存盤并運(yùn)行,可以看到屏幕上出現(xiàn)一個灰色背景的窗口,窗口內(nèi)從灰色到紅色漸漸出現(xiàn)"養(yǎng)老保險基金管理系統(tǒng) "的漢字,實(shí)現(xiàn)了淡入;在窗口內(nèi)按一下鼠標(biāo)左鍵,可以看到漢字從紅色到灰色漸漸隱入到背景中去,實(shí)現(xiàn)了淡出。

  將該表單作為管理系統(tǒng)軟件的封面,取得了良好的視覺效果。通過改變RGB()函數(shù)的參數(shù)值,可以實(shí)現(xiàn)其它顏色的變化。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多