專利名稱:一種輸入框動態(tài)透明顯示特效實現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及多媒體信息技術(shù)以及計算機(jī)圖像處理技術(shù)領(lǐng)域,具體涉及一種輸入框動態(tài)透明顯示特效實現(xiàn)方法。
背景技術(shù):
隨著計算機(jī)硬件性能以及計算機(jī)編程技術(shù)的不斷發(fā)展,也帶動了各種計算機(jī)應(yīng)用軟件UI (User hterface,用戶界面)顯示技術(shù)的革新,特別在用戶交互UI顯示方面,各種賞心悅目的UI顯示特效層出不窮,使用戶在軟件使用體驗方面得到了大幅改善。根據(jù)市場分析調(diào)查表明,對于計算機(jī)應(yīng)用軟件產(chǎn)品而言,制作友好、新穎、多樣化的界面顯示效果,不經(jīng)能夠體現(xiàn)應(yīng)用軟件產(chǎn)品品質(zhì),還有助于提升用戶的操作體驗感和產(chǎn)品忠誠度??上攵?, 即便在未來,計算機(jī)應(yīng)用軟件的UI顯示技術(shù)依然是計算機(jī)應(yīng)用軟件開發(fā)工作中的重要任務(wù)之一。輸入框是計算機(jī)應(yīng)用軟件中最常用到的窗體控件之一,通常可以通過調(diào)用計算機(jī)系統(tǒng)的API函數(shù)實現(xiàn)輸入框控件的創(chuàng)建和關(guān)閉,主要用于實現(xiàn)信息記錄、與應(yīng)用軟件進(jìn)行信息交互等功能。API (Application Programming hterface,應(yīng)用程序編程接口)函數(shù)是計算機(jī)系統(tǒng)中預(yù)先定義的用以控制系統(tǒng)中運行的各個部件的外觀和行為的一套系統(tǒng)函數(shù), 運行在操作系統(tǒng)中的應(yīng)用程序都可以調(diào)用計算機(jī)系統(tǒng)中的API函數(shù)。輸入框作為計算機(jī)系統(tǒng)以及應(yīng)用軟件的最常用到的窗體控件之一,普遍的計算機(jī)系統(tǒng)都提供有創(chuàng)建和關(guān)閉窗體控件的API函數(shù),供操作系統(tǒng)自身或應(yīng)用軟件調(diào)用實現(xiàn)輸入框控件的創(chuàng)建和關(guān)閉;不僅如此,在蘋果公司出品的Mac OS操作系統(tǒng)、微軟公司出品的Win7操作系統(tǒng)等較新的計算機(jī)系統(tǒng)中,還提供有窗體控件透明顯示API函數(shù),操作系統(tǒng)自身或應(yīng)用程序創(chuàng)建輸入框控件后, 可以直接調(diào)用窗體控件透明顯示API函數(shù)改變輸入框控件的透明顯示狀態(tài),進(jìn)而非常容易的實現(xiàn)輸入框的動態(tài)透明顯示特效,借以豐富應(yīng)用軟件的UI視覺顯示效果,提升用戶的操作體驗感。然而,在Windows XP等較早的計算機(jī)系統(tǒng)中,系統(tǒng)自身的UI顯示效果較為單一, 更沒有提供窗體控件透明顯示API函數(shù)等豐富顯示效果的API函數(shù),所以應(yīng)用軟件無法再直接借助系統(tǒng)API函數(shù)實現(xiàn)輸入框動態(tài)透明顯示特效;可目前Windows XP等較早的計算機(jī)系統(tǒng)依然有非常廣泛的應(yīng)用,因此,在未提供窗體控件透明顯示API函數(shù)的計算機(jī)系統(tǒng)中實現(xiàn)輸入框動態(tài)透明顯示特效,依然是進(jìn)一步擴(kuò)大應(yīng)用軟件產(chǎn)品受眾用戶群、豐富應(yīng)用軟件的UI視覺顯示效果、提升應(yīng)用軟件產(chǎn)品市場競爭力的重要技術(shù)手段之一;相應(yīng)地,如何在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下實現(xiàn)輸入框動態(tài)透明顯示特效, 則成為應(yīng)用軟件產(chǎn)品研發(fā)中的一項重要課題??墒牵捎谳^早的計算機(jī)系統(tǒng)自身未提供窗體控件透明顯示API函數(shù),如果基于計算機(jī)系統(tǒng)層面直接編制具有動態(tài)透明顯示特效的輸入框控件的系統(tǒng)代碼,這將是一個非常復(fù)雜的研發(fā)工程,研發(fā)技術(shù)難度大、研發(fā)周期長、研發(fā)投入成本高等因素,使得該研發(fā)方案的實施非常困難,成為系統(tǒng)中實現(xiàn)輸入框動態(tài)透明顯示特效的技術(shù)瓶頸。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中存在的上述不足,本發(fā)明的目的在于提供一種輸入框動態(tài)透明顯示特效實現(xiàn)方法,使得在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下,也能較容易的實現(xiàn)輸入框的動態(tài)透明顯示特效。為實現(xiàn)上述目的,本發(fā)明采用了如下技術(shù)手段
一種輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,輸入框被激活啟動后,在輸入框獲得焦點的情況下,創(chuàng)建和運行輸入框控件;在輸入框失去焦點的情況下,獲取輸入框控件中的錄入字符后關(guān)閉輸入框控件,繪制含有所述錄入字符的輸入框圖片并顯示為輸入框, 且通過動態(tài)改變所述輸入框圖片的透明度值,實現(xiàn)輸入框的動態(tài)透明顯示特效。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,具體而言,包括以下步驟
1)輸入框被激活啟動,初始化透明度參數(shù)TR的值,并清空錄入字符緩存區(qū);然后執(zhí)行步驟2);
2)判斷當(dāng)前時刻輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,執(zhí)行步驟3);在輸入框失去焦點的情況下,執(zhí)行步驟4);
3)創(chuàng)建輸入框控件,將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域后,維持輸入框控件運行;直至輸入框失去焦點時,再復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),然后關(guān)閉輸入框控件,執(zhí)行步驟4);
4)判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若是,執(zhí)行步驟5);否則執(zhí)行步驟
6);
5)更新透明度參數(shù)TR的值TR=TR-Δ TRdn ;更新后,若TR ^ 0,直接執(zhí)行步驟7);若 TR<0,則令TR=0,然后再執(zhí)行步驟7);其中,Δ TRdn為透明度降值參數(shù),且Δ TRdn>0 ;
6)更新透明度參數(shù)TR的值TR=TR+ATRup;更新后,若TR < TRmax,直接執(zhí)行步驟 7);若TRXTRmax,則令TR=TRmax,然后再執(zhí)行步驟7);其中,Δ TRup為透明度增值參數(shù),且 Δ TRup>0 ;TRmax為預(yù)設(shè)的透明度上限值;
7)獲取當(dāng)前錄入字符緩存區(qū)內(nèi)存儲的錄入字符,繪制含有所述錄入字符的輸入框圖片,并按當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,將繪制的輸入框圖片作為輸入框加以更新顯示;經(jīng)延時Δ t后,返回步驟2);
8)循環(huán)執(zhí)行步驟2) 7),直至輸入框被關(guān)閉時,關(guān)閉輸入框控件并終止顯示輸入框圖片。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,進(jìn)一步,所述步驟5)中“更新透明度參數(shù)TR的值”之前還包括判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時Δ t后直接返回步驟2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,進(jìn)一步,所述步驟6)中“更新透明度參數(shù)TR的值”之前還包括判斷當(dāng)前是否已繪制透明度值為透明度上限值TRmax的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時Δ t后直接返回步驟2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,進(jìn)一步,所述步驟3)中“創(chuàng)建輸入框控件”之前還包括判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若否,則執(zhí)行步驟5);若是,則繼續(xù)執(zhí)行該步驟的后續(xù)操作。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,進(jìn)一步,所述“繪制含有所述錄入字符的輸入框圖片”的具體流程為
a)預(yù)先存儲有輸入框的字符錄入?yún)^(qū)域背景圖片模板和邊框區(qū)域圖片模板;
b)調(diào)用存儲的字符錄入?yún)^(qū)域背景圖片模板繪制輸入框的字符錄入?yún)^(qū)域;
c)在繪制的輸入框字符錄入?yún)^(qū)域中繪制錄入字符;
d)調(diào)用存儲的邊框區(qū)域圖片模板繪制輸入框的邊框。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,作為一種可選擇方案,所述步驟1) 中,初始化透明度參數(shù)TR的值為0。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,作為一種可選擇方案,所述步驟1) 中,初始化透明度參數(shù)TR的值為透明度上限值TRmax。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,作為一種優(yōu)選方案,所述透明度上限值TRmax的取值范圍為50% 90%。上述的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,作為一種優(yōu)選方案,所述透明度降值參數(shù)Δ TRdn的取值范圍為5% 20% ;所述透明度增值參數(shù)Δ TRup的取值范圍為5% 20% ; 所述延時Δ t的取值范圍為2(T200ms。相比于現(xiàn)有技術(shù),本發(fā)明具有如下有益效果
1、本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下,只需要借助常規(guī)的對窗體創(chuàng)建、刪除應(yīng)用程序編程接口函數(shù)的調(diào)用以及圖片的繪制和處理,便能夠?qū)崿F(xiàn)輸入框動態(tài)透明顯示特效,不涉及對計算機(jī)系統(tǒng)層面的源代碼操作研發(fā),大大降低了研發(fā)輸入框動態(tài)透明顯示特效的研發(fā)技術(shù)難度,并且針對不同的計算機(jī)系統(tǒng)具有良好的可移植性,更有助于縮短研發(fā)周期和降低研發(fā)投入成本。2、本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,可以根據(jù)實際的應(yīng)用場合自由設(shè)置生動、富有交互性的動態(tài)透明顯示特效,還可以通過改進(jìn)進(jìn)一步提高其魯棒性能、完善特效顯示效果。3、本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,能夠應(yīng)用于未提供窗體控件透明顯示API函數(shù)的計算機(jī)系統(tǒng)下運行的應(yīng)用軟件實現(xiàn)輸入框的動態(tài)透明顯示特效,豐富應(yīng)用軟件的UI視覺顯示效果,增強(qiáng)應(yīng)用軟件用戶的使用體驗感,提升應(yīng)用軟件產(chǎn)品市場競爭力和受眾用戶群。
圖1為本發(fā)明輸入框動態(tài)透明顯示特效實現(xiàn)方法實施例一的流程圖; 圖2為本發(fā)明輸入框動態(tài)透明顯示特效實現(xiàn)方法實施例二的流程圖3為本發(fā)明輸入框動態(tài)透明顯示特效實現(xiàn)方法實施例三的流程圖。
具體實施例方式在不借助或無法借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下,如果基于計算機(jī)系統(tǒng)層面直接編制具有動態(tài)透明顯示特效的輸入框控件的系統(tǒng)代碼,需要編程技術(shù)人員具備相當(dāng)高的計算機(jī)系統(tǒng)掌控應(yīng)用能力以及相當(dāng)豐富的應(yīng)用軟件編程經(jīng)驗,對編程技CN 102541554 A術(shù)人員的要求很高,普通的編程技術(shù)人員都難以勝任,其技術(shù)難度也比較大,相應(yīng)地開發(fā)周期也比較長;同時,如果基于計算機(jī)系統(tǒng)層面直接編制具有動態(tài)透明顯示特效的輸入框控件的系統(tǒng)代碼,對于不同的計算機(jī)操作系統(tǒng)而言該輸入框控件的源代碼必然存在較大差異,因此針對不同的計算機(jī)操作系統(tǒng)就必須單獨編制具有動態(tài)透明顯示特效的輸入框控件的系統(tǒng)代碼,這又將大幅提高研發(fā)投入成本。為此,本發(fā)明提出了一種輸入框動態(tài)透明顯示特效實現(xiàn)方法,與直接編制具有動態(tài)透明顯示特效的輸入框控件系統(tǒng)代碼的研發(fā)思路不同,本發(fā)明方法在輸入框被激活啟動后,在輸入框獲得焦點的情況下,創(chuàng)建和運行輸入框控件;在輸入框失去焦點的情況下,獲取輸入框控件中的錄入字符后關(guān)閉輸入框控件,繪制含有所述錄入字符的輸入框圖片并顯示為輸入框,且通過動態(tài)改變所述輸入框圖片的透明度值,實現(xiàn)輸入框的動態(tài)透明顯示特效。采用本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下,只需要借助常規(guī)的輸入框控件創(chuàng)建、關(guān)閉手段以及圖片繪制、處理手段即可實現(xiàn)輸入框的動態(tài)透明顯示特效,而無需基于計算機(jī)系統(tǒng)層面編制具有動態(tài)透明顯示特效的輸入框控件的系統(tǒng)代碼,大大降低了研發(fā)技術(shù)難度,有助于縮短研發(fā)周期,降低研發(fā)投入成本。下面通過實施例對本發(fā)明的效果做進(jìn)一步說明。實施例一
本實施例以大家熟悉的Windows XP操作系統(tǒng)為例,利用本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法在Windows XP操作系統(tǒng)中實現(xiàn)輸入框的動態(tài)透明顯示特效,并借助其實現(xiàn)過程,體現(xiàn)本發(fā)明方法的具體應(yīng)用以及有益效果。Windows XP操作系統(tǒng)提供有創(chuàng)建窗體控件API函數(shù)“CreateWindow”和關(guān)閉窗體控件API函數(shù)“DestroyWindow”,并提供有GID+ 圖形設(shè)備接口函數(shù)供應(yīng)用程序調(diào)用實現(xiàn)圖形顯示。利用本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,結(jié)合Windows XP操作系統(tǒng)提供的這些應(yīng)用程序編程接口函數(shù),即可在Windows XP操作系統(tǒng)中簡便地實現(xiàn)輸入框的動態(tài)透明顯示特效,即輸入框被激活啟動后,在輸入框獲得焦點的情況下,通過調(diào)用API函數(shù)“CreateWindow”創(chuàng)建輸入框控件,并維持輸入框控件運行;在輸入框失去焦點的情況下,獲取輸入框控件中的錄入字符后調(diào)用API函數(shù) “DestroyWindow”關(guān)閉輸入框控件,繪制含有所述錄入字符的輸入框圖片,并調(diào)用GID+圖形設(shè)備接口函數(shù)將所述輸入框圖片顯示為輸入框,且通過動態(tài)改變所述輸入框圖片的透明度值,實現(xiàn)輸入框的動態(tài)透明顯示特效。本發(fā)明所述的對話框獲得焦點,是指對話框已被選中作為計算機(jī)系統(tǒng)最前端的執(zhí)行目標(biāo);所述的對話框失去焦點,是指對話框已不作為計算機(jī)系統(tǒng)最前端的執(zhí)行目標(biāo)。之所以根據(jù)對話框是否獲得焦點來區(qū)分運行輸入框的動態(tài)透明顯示特效,是因為在輸入框獲得焦點的情況下,意味著用戶需要借助對話框執(zhí)行字符錄入操作,因此執(zhí)行字符錄入操作只能夠通過運行輸入框控件實現(xiàn),并且在用戶錄入字符過程中也不需要將對話框顯示為透明狀態(tài);而在輸入框失去焦點的情況下,表明輸入框不會執(zhí)行任何操作,因此利用一個輸入框圖片顯示為輸入框即可,這樣就可以通過動態(tài)改變輸入框圖片的透明度值,在視覺上讓實現(xiàn)輸入框動態(tài)透明顯示特效。輸入框動態(tài)透明顯示特效的特效呈現(xiàn)方式可以是多種形式的,例如,在輸入框失去焦點的情況下,將輸入框圖片的透明度值設(shè)置為50%,使得輸入框持續(xù)顯示為半透明狀態(tài);或者,在輸入框失去焦點的情況下,以一固定頻率將輸入框圖片的透明度在0 (不透明狀態(tài))和100% (完全透明、不可見狀態(tài))之間切換,使得輸入框顯示為固定頻率的閃爍狀態(tài);等等。但為了提升輸入框動態(tài)透明顯示特效的生動效果,增加用戶使用的交互體驗感,本實施例提供了輸入框動態(tài)透明顯示特效實現(xiàn)方法的一種較優(yōu)的執(zhí)行方案,讓用戶能夠通過操作鼠標(biāo)控制輸入框漸亮(指輸入框的透明程度逐漸降低)、漸暗(指輸入框的透明程度逐漸增高)的動態(tài)透明顯示特效;該較優(yōu)執(zhí)行方案的流程如圖1所示,其具體的實現(xiàn)步驟如下
Al)輸入框被激活啟動,初始化透明度參數(shù)TR的值,并清空錄入字符緩存區(qū);然后執(zhí)行步驟A2)。該步驟執(zhí)行輸入框被激活啟動后的初始化操作,其中的透明度參數(shù)TR用于動態(tài)設(shè)置輸入框圖片的透明度值,字符緩存區(qū)用于存儲備用的錄入字符。A2)判斷當(dāng)前時刻輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,執(zhí)行步驟 A3);在輸入框失去焦點的情況下,執(zhí)行步驟A4)。該步驟依然通過判斷輸入框是否已獲得焦點,而區(qū)分輸入框的不同運行方式,這樣處理的原因在前文已經(jīng)加以說明。A3)創(chuàng)建輸入框控件,將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域后,維持輸入框控件運行;直至輸入框失去焦點時,再復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),然后關(guān)閉輸入框控件,執(zhí)行步驟A4);
該步驟是在輸入框獲得焦點的情況下才得以運行的步驟,通過創(chuàng)建和運行輸入框控件保證輸入框作為系統(tǒng)最前端的執(zhí)行目標(biāo)時能夠執(zhí)行相應(yīng)的操作,并在創(chuàng)建輸入框控件時將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域,保證每次輸入框獲得焦點而重新創(chuàng)建的輸入框控件中都錄入有其前次關(guān)閉前所錄入的字符;當(dāng)然,若在輸入框被激活啟動后首次創(chuàng)建輸入框控件,由于錄入字符緩存區(qū)已被清空,因此的輸入框控件字符錄入?yún)^(qū)域依然會是空白的。輸入框控件維持運行至輸入框失去焦點時,則復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),以備用,然后關(guān)閉輸入框控件。A4)判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若是,執(zhí)行步驟A5);否則執(zhí)行步驟A6)。該步驟是在輸入框失去焦點的情況下才得以運行的步驟,通過判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi)而區(qū)別執(zhí)行步驟A5)或步驟A6),以區(qū)別實現(xiàn)輸入框漸亮、漸暗的動態(tài)透明顯示特效。A5)更新透明度參數(shù)TR的值TR=TR- Δ TRdn ;更新后,若TR彡0,直接執(zhí)行步驟 7);若TR<0,則令TR=0,然后再執(zhí)行步驟A7);其中,Δ TRdn為透明度降值參數(shù),且Δ TRdnX)。該步驟通過更新透明度參數(shù)TR的值,讓透明度參數(shù)TR的值降低一個單位,直至降低至小于0后,維持透明度參數(shù)TR=O的狀態(tài);該降低一個單位的大小,可以通過預(yù)先設(shè)定透明度降值參數(shù)Δ TRdn的取值加以決定。Α6)更新透明度參數(shù)TR的值TR=TR+ Δ TRup ;更新后,若TR ^ TRmax,直接執(zhí)行步驟7);若TRXTRmax,則令TR=TRmax,然后再執(zhí)行步驟A7);其中,Δ TRup為透明度增值參數(shù),且Δ TRup>0 ;TRmax為預(yù)設(shè)的透明度上限值。該步驟通過更新透明度參數(shù)TR的值,讓透明度參數(shù)TR的值增高一個單位,直至增高至大于預(yù)設(shè)的透明度上限值TRmax后,維持透明度參數(shù)TR=TRmax的狀態(tài);該增高一個單位的大小,可以通過預(yù)先設(shè)定透明度增值參數(shù)Δ TRup的取值加以決定。Α7)獲取當(dāng)前錄入字符緩存區(qū)內(nèi)存儲的錄入字符,繪制含有所述錄入字符的輸入框圖片,并按當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,將繪制的輸入框圖片作為輸入框加以更新顯示;經(jīng)延時Δ t后,返回步驟2)。在前述步驟經(jīng)過對透明度參數(shù)TR的增值或降值更新以后,該步驟根據(jù)當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,繪制輸入框圖片并更新顯示為輸入框,顯示持續(xù)時間為At后,返回步驟2),再次執(zhí)行輸入框是否獲得焦點的判斷操作。該步驟中, 繪制的輸入框圖片的實現(xiàn)手段非常多,例如可以編程調(diào)用計算機(jī)系統(tǒng)繪圖控件或者調(diào)用第三方制圖軟件進(jìn)行繪制等;但考慮到減少繪圖過程對計算機(jī)系統(tǒng)資源消耗、提高繪圖執(zhí)行效率的因素,較為優(yōu)選的繪制輸入框圖片的方法是
a)預(yù)先存儲有輸入框的字符錄入?yún)^(qū)域背景圖片模板和邊框區(qū)域圖片模板;
b)調(diào)用存儲的字符錄入?yún)^(qū)域背景圖片模板繪制輸入框的字符錄入?yún)^(qū)域;
c)在繪制的輸入框字符錄入?yún)^(qū)域中繪制錄入字符;
d)調(diào)用存儲的邊框區(qū)域圖片模板繪制輸入框的邊框。由此方法,通過直接調(diào)取預(yù)先存儲的區(qū)域圖片模板繪制輸入框,有助于簡化繪圖操作的計算機(jī)執(zhí)行過程,降低系統(tǒng)資源消耗,提高繪圖執(zhí)行效率,并且逐層繪制保證了后繪制的部分在圖片中更上層顯示。A8 )循環(huán)執(zhí)行步驟A2 )、7 ),直至輸入框被關(guān)閉時,關(guān)閉輸入框控件并終止顯示輸入框圖片。由上述輸入框動態(tài)透明顯示特效實現(xiàn)流程可以看到,在輸入框被激活啟動后,則循環(huán)執(zhí)行步驟A2 )、7 ),直至輸入框被關(guān)閉。在環(huán)執(zhí)行步驟A2 )、7 )的整個過程中,都將循環(huán)檢測判斷輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,創(chuàng)建和運行輸入框控件, 直至輸入框失去焦點時,復(fù)制輸入框控件中的錄入字符覆蓋存儲至錄入字符緩存區(qū)后關(guān)閉輸入框控件,然后在輸入框失去焦點的情況下循環(huán)判斷鼠標(biāo)位置,并反復(fù)繪制含有錄入字符緩存區(qū)所存儲的錄入字符的輸入框圖片更新顯示為輸入框,使得輸入框的錄入字符顯示狀態(tài)維持呈現(xiàn)為輸入框控件前次關(guān)閉時刻的字符錄入狀態(tài);在輸入框失去焦點狀態(tài)的循環(huán)過程中,在鼠標(biāo)位于輸入框的顯示區(qū)域內(nèi)的情況下,循環(huán)遞減更新透明度參數(shù)TR的值,并按更新的透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,反復(fù)繪制含有錄入字符的輸入框圖片更新顯示為輸入框,使得輸入框顯示呈現(xiàn)為動態(tài)漸亮(透明程度逐漸降低)的動態(tài)透明顯示特效,當(dāng)輸入框顯示呈現(xiàn)為透明度為0的完全不透明狀態(tài)后則不再變化;在輸入框失去焦點、且鼠標(biāo)沒有位于輸入框的顯示區(qū)域內(nèi)的情況下,循環(huán)遞增更新透明度參數(shù)TR的值,并按更新的透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,反復(fù)繪制含有錄入字符的輸入框圖片更新顯示為輸入框,使得輸入框顯示呈現(xiàn)為動態(tài)漸暗(透明程度逐漸增高)的動態(tài)透明顯示特效,當(dāng)輸入框顯示呈現(xiàn)為透明度為預(yù)設(shè)的透明度上限狀態(tài)后則不再變化;若輸入框再次獲得焦點,則將再次創(chuàng)建輸入框控件,并將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域,使得重新創(chuàng)建的輸入框控件的字符錄入狀態(tài)恢復(fù)為輸入框控件前次關(guān)閉時刻的字符錄入狀態(tài),同時也使得重新創(chuàng)建的輸入框控件的字符錄入狀態(tài)與重新創(chuàng)建輸入框控件前輸入框圖片的錄入字符顯示狀態(tài)在視覺感觀上保持了一致,然后再次維持輸入框控件運行;如此循環(huán)往復(fù)。而在用戶看起來,輸入框所顯示呈現(xiàn)的窗體外形和字符錄入狀態(tài)并不因輸入框獲得焦點與否而改變,因此感受不到真實顯示的輸入框控件與模擬顯示的輸入框圖片之間的切換運行,卻能夠感受到在輸入框失去焦點的情況下,鼠標(biāo)移入輸入框顯示區(qū)域后輸入框漸亮、鼠標(biāo)移出輸入框顯示區(qū)域后輸入框漸暗的動態(tài)透明顯示特效,生動地、富有交互性地增加了用戶的使用體驗感。同時也可以看到,利用本發(fā)明方法在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下實現(xiàn)該生動、富有交互性的輸入框動態(tài)透明顯示特效,并不涉及對Windows XP 系統(tǒng)層面的源代碼操作,而只需要借助常規(guī)的對窗體創(chuàng)建、刪除應(yīng)用程序編程接口函數(shù)的調(diào)用以及圖片的繪制和處理,這就大大降低了研發(fā)輸入框動態(tài)透明顯示特效的研發(fā)技術(shù)難度,更有助于縮短研發(fā)周期;并且,由于不涉及對計算機(jī)系統(tǒng)層面的源代碼操作,若需要將該輸入框動態(tài)透明顯示特效實現(xiàn)方法應(yīng)用于其它的計算機(jī)操作系統(tǒng),則只需要更改調(diào)用相應(yīng)計算機(jī)系統(tǒng)的應(yīng)用程序編程接口函數(shù),而不同計算機(jī)系統(tǒng)的應(yīng)用程序編程接口函數(shù)都是公開開放的,從而使得本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法對于不同的計算機(jī)系統(tǒng)具有良好的可移植性,能夠大幅降低研發(fā)投入成本。在本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法中,其特效的具體顯示效果是由多個控制參數(shù)具體設(shè)定的,可以根據(jù)具體應(yīng)用場合所需要的特效具體顯示效果來設(shè)置這些控制參數(shù)的值。例如,針對輸入框被激活啟動后便立即獲得焦點的情況,由于輸入框獲得焦點狀態(tài)創(chuàng)建運行的輸入框控件是完全不透明的,因此在步驟1)中最好將透明度參數(shù)TR的值初始化為0,即完全不透明,使得輸入框首次由獲得焦點到失去焦點時所繪制的輸入框圖片從透明度值為0開始漸暗,實現(xiàn)視覺效果的平滑過渡;同理,針對輸入框被激活啟動后處于失去焦點狀態(tài)的情況,則在步驟1)中最好將透明度參數(shù)TR的值初始化為透明度上限值 TRmax,使得輸入框被激活啟動后便能夠通過鼠標(biāo)操作實現(xiàn)從透明度上限狀態(tài)漸亮顯示的動態(tài)透明顯示特效。至于透明度上限值TRmax的取值,則可以根據(jù)具體應(yīng)用場合中所需要的最透明顯示程度加以設(shè)定,只是,如果透明度上限值TRmax的值設(shè)置過低容易導(dǎo)致動態(tài)透明顯示特效的視覺效果不明顯,而若將透明度上限值TRmax設(shè)置為100%又將導(dǎo)致對話框在某些時刻完全不可見,不便于用戶操作;因此綜合考慮這些因素,透明度上限值TRmax的取值范圍為509Γ90%較為適宜。再例如,輸入框在失去焦點情況下,其漸亮、漸暗動態(tài)透明顯示特效的平滑度和漸變速率,是由透明度降值參數(shù)Δ TRdn、透明度增值參數(shù)Δ TRup和延時Δ t的取值而確定;透明度降值參數(shù)Δ TRdn、透明度增值參數(shù)Δ TRup的取值越小,則漸亮、漸暗動態(tài)過程的平滑度越好,但相應(yīng)的也導(dǎo)致動態(tài)透明顯示特效的漸變速率越慢;而延時Δ t的取值越小,可以使得動態(tài)透明顯示特效的漸變速率越快,但相應(yīng)的也導(dǎo)致繪制輸入框圖片的頻率越頻繁,會增加對計算機(jī)系統(tǒng)資源的消耗;綜合這多方面的因素考慮,作為優(yōu)選的取值范圍,透明度降值參數(shù)Δ TRdn的取值范圍最好在59Γ20%之間,透明度增值參數(shù) Δ TRup的取值范圍最好在59Γ20%之間,而延時Δ t的取值范圍最好在2(T200ms之間,當(dāng)然,透明度降值參數(shù)Δ TRdn與透明度增值參數(shù)Δ TRup的取值可以相同。實施例二
實施例一的輸入框動態(tài)透明顯示特效實現(xiàn)方案中,在在輸入框失去焦點的情況下會不斷反復(fù)繪制輸入框圖片顯示為輸入框,如此頻繁的、不間斷的執(zhí)行繪圖操作,將持續(xù)占用計算機(jī)系統(tǒng)資源,影響計算機(jī)的其它任務(wù)處理執(zhí)行效率。針對這一問題,在實施例一的基礎(chǔ)上,本實施例針對輸入框動態(tài)透明顯示特效實現(xiàn)方法中的步驟5)和步驟6)進(jìn)行了改進(jìn),提出一種改進(jìn)方案的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其流程如圖2所示,具體的實現(xiàn)步驟如下Bi)輸入框被激活啟動,初始化透明度參數(shù)TR的值,并清空錄入字符緩存區(qū);然后執(zhí)行步驟B2);
B2)判斷當(dāng)前時刻輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,執(zhí)行步驟B3); 在輸入框失去焦點的情況下,執(zhí)行步驟B4);
B3)創(chuàng)建輸入框控件,將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域后,維持輸入框控件運行;直至輸入框失去焦點時,再復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),然后關(guān)閉輸入框控件,執(zhí)行步驟B4);
B4)判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若是,執(zhí)行步驟B5);否則執(zhí)行步驟 B6);
B5)判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時At后直接返回步驟B2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作,S卩,更新透明度參數(shù)TR的值TR=TR- Δ TRdn ;更新后,若TR ^ 0,直接執(zhí)行步驟B7);若TR<0,則令TR=O,然后再執(zhí)行步驟B7);其中,Δ TRdn為透明度降值參數(shù),且Δ TRdn>0 ;
B6)判斷當(dāng)前是否已繪制透明度值為透明度上限值TRmax的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時At后直接返回步驟B2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作, 艮口,更新透明度參數(shù)TR的值TR=TR+ Δ TRup ;更新后,若TR ( TRmax,直接執(zhí)行步驟Β7); 若TR>TRmaX,則令TR=TRmax,然后再執(zhí)行步驟B7 );其中,Δ TRup為透明度增值參數(shù),且 Δ TRup>0 ;TRmax為預(yù)設(shè)的透明度上限值;
B7)獲取當(dāng)前錄入字符緩存區(qū)內(nèi)存儲的錄入字符,繪制含有所述錄入字符的輸入框圖片,并按當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,將繪制的輸入框圖片作為輸入框加以更新顯示;經(jīng)延時Δ t后,返回步驟B2);
B8)循環(huán)執(zhí)行步驟B2) 17),直至輸入框被關(guān)閉時,關(guān)閉輸入框控件并終止顯示輸入框圖片。 參見上述輸入框動態(tài)透明顯示特效實現(xiàn)流程,其整體流程與實施例一的方案較為相似,即在輸入框被激活啟動后,則循環(huán)執(zhí)行步驟Β2ΓΒ7),直至輸入框被關(guān)閉。但與實施例一中方案的不同之處在于①在輸入框失去焦點的情況下,每當(dāng)執(zhí)行至步驟5)準(zhǔn)備降值更新透明度參數(shù)TR的值進(jìn)而繪制新的輸入框圖片之前,先判斷當(dāng)前是否已繪制透明度值為0 的輸入框圖片作為輸入框加以顯示,若已繪制,則不再重新繪制新的輸入框圖片更新顯示為輸入框,而是維持已繪制的輸入框圖片顯示狀態(tài),經(jīng)延時Δ t后直接返回步驟2),重新循環(huán)判斷輸入框是否獲得焦點以及判斷鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若尚未繪制輸入框圖片,或者已繪制的輸入框圖片的透明度不為0,才繼續(xù)降值更新透明度參數(shù)TR的值并繪制新的輸入框圖片更新顯示為輸入框。②在輸入框失去焦點的情況下,每當(dāng)執(zhí)行至步驟 6)準(zhǔn)備增值更新透明度參數(shù)TR的值進(jìn)而繪制新的輸入框圖片之前,先判斷當(dāng)前是否已繪制透明度值為透明度上限值TRmax的輸入框圖片作為輸入框加以顯示,若已繪制,則不再重新繪制新的輸入框圖片更新顯示為輸入框,而是維持已繪制的輸入框圖片顯示狀態(tài),經(jīng)延時Δ t后直接返回步驟2),重新循環(huán)判斷輸入框是否獲得焦點以及判斷鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若尚未繪制輸入框圖片,或者已繪制的輸入框圖片的透明度不為透明度上限值TRmax,才繼續(xù)增值更新透明度參數(shù)TR的值并繪制新的輸入框圖片更新顯示為輸入框。由此,使得輸入框在動態(tài)透明顯示特效運行過程中,輸入框失去焦點時,在輸入框漸亮顯示為完全不透明狀態(tài)后鼠標(biāo)繼續(xù)位于輸入框的顯示區(qū)域內(nèi)的情況下,以及在輸入框漸暗顯示為預(yù)設(shè)的透明度上限狀態(tài)后鼠標(biāo)繼續(xù)位于輸入框的顯示區(qū)域之外的情況下,均不再繪制新的輸入框圖片更新顯示為輸入框,這樣就使得其僅在輸入框顯示透明度動態(tài)變化的過程中才執(zhí)行繪圖操作,而在其它的大部分時間里均不再繪制新的輸入框圖片,大大降低了系統(tǒng)執(zhí)行繪圖操作的頻率,減少了本發(fā)明方法對計算機(jī)系統(tǒng)戲資源的占用和消耗,提高了本發(fā)明方法的魯棒性能。實施例三
按照實施例一的實施方案,若通過鼠標(biāo)直接點擊輸入框顯示區(qū)域讓輸入框獲得焦點, 由于輸入框獲得焦點前鼠標(biāo)移入輸入框顯示區(qū)域時會觸發(fā)其漸亮顯示過程,因此依然能夠看到輸入框的動態(tài)透明顯示特效;然而,若在鼠標(biāo)位于輸入框顯示區(qū)域之外、輸入框顯示為透明度上限狀態(tài)的情況下,通過鼠標(biāo)點擊系統(tǒng)任務(wù)欄中的輸入框標(biāo)簽使輸入框獲得焦點, 或者利用Windows XP操作系統(tǒng)默認(rèn)的焦點切換快捷操作方式操作鍵盤的“Alt+Tab”鍵將輸入框切換為焦點,由于被觸發(fā)創(chuàng)建的輸入框控件將直接顯示為完全不透明狀態(tài),因此會看到輸入框由透明度上限值顯示狀態(tài)突然切換為完全不透明顯示狀態(tài),而并沒有呈現(xiàn)出平滑過渡的動態(tài)透明顯示特效。為了克服這一動態(tài)透明顯示特效的缺陷,在實施例一的基礎(chǔ)上,本實施例提出了另一種改進(jìn)方案的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其流程如圖3 所示,具體的實現(xiàn)步驟如下
Cl)輸入框被激活啟動,初始化透明度參數(shù)TR的值,并清空錄入字符緩存區(qū);然后執(zhí)行步驟C2);
C2)判斷當(dāng)前時刻輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,執(zhí)行步驟C3); 在輸入框失去焦點的情況下,執(zhí)行步驟C4);
C3)判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若否,則執(zhí)行步驟C5);若是,則繼續(xù)執(zhí)行該步驟的后續(xù)操作,即,創(chuàng)建輸入框控件,將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域后,維持輸入框控件運行;直至輸入框失去焦點時,再復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),然后關(guān)閉輸入框控件,執(zhí)行步驟C4);
C4)判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若是,執(zhí)行步驟C5);否則執(zhí)行步驟 C6);
C5)更新透明度參數(shù)TR的值TR=TR- Δ TRdn ;更新后,若TR彡0,直接執(zhí)行步驟C7); 若TR<0,則令TR=0,然后再執(zhí)行步驟C7);其中,Δ TRdn為透明度降值參數(shù),且Δ TRdn>0 ;
C6)更新透明度參數(shù)TR的值TR=TR+ Δ TRup ;更新后,若TR ^ TRmax,直接執(zhí)行步驟 C7);若TRXTRmax,則令TR=TRmax,然后再執(zhí)行步驟C7);其中,Δ TRup為透明度增值參數(shù), 且Δ TRup>0 ;TRmax為預(yù)設(shè)的透明度上限值;
C7)獲取當(dāng)前錄入字符緩存區(qū)內(nèi)存儲的錄入字符,繪制含有所述錄入字符的輸入框圖片,并按當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,將繪制的輸入框圖片作為輸入框加以更新顯示;經(jīng)延時Δ t后,返回步驟C2);
C8)循環(huán)執(zhí)行步驟C2)飛7),直至輸入框被關(guān)閉時,關(guān)閉輸入框控件并終止顯示輸入框圖片。參見上述輸入框動態(tài)透明顯示特效實現(xiàn)流程,其整體流程與實施例一的方案較為相似,即在輸入框被激活啟動后,則循環(huán)執(zhí)行步驟C2)飛7),直至輸入框被關(guān)閉。但與實施例一中方案的不同之處在于,在輸入框獲得焦點的情況下,本實施例方案會首先判斷是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示,若尚未繪制輸入框圖片,或者已繪制的輸入框圖片的透明度不為0,則將循環(huán)執(zhí)行步驟5)和步驟7),通過反復(fù)降值更新透明度參數(shù)TR的值并反復(fù)繪制新的輸入框圖片顯示為輸入框,使得輸入框呈現(xiàn)出漸亮的動態(tài)透明顯示特效,直至輸入框呈現(xiàn)為完全不透明狀態(tài)時(即已繪制透明度值為0的輸入框圖片時),才會創(chuàng)建和運行輸入框控件;由此,使得在任意的操作情況下創(chuàng)建輸入框控件加以顯示之前都會呈現(xiàn)出動態(tài)透明顯示特效,克服了前述的特效顯示缺陷。當(dāng)然,本實施例的方案還能夠結(jié)合實施例二的實施方式,借以提高本發(fā)明方法的魯棒性能。綜合上述三個實施例的舉例說明,可以看到,本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,在不借助計算機(jī)系統(tǒng)窗體控件透明顯示API函數(shù)的情況下,只需要借助常規(guī)的對窗體創(chuàng)建、刪除應(yīng)用程序編程接口函數(shù)的調(diào)用以及圖片的繪制和處理,便能夠?qū)崿F(xiàn)輸入框動態(tài)透明顯示特效,不涉及對計算機(jī)系統(tǒng)層面的源代碼操作研發(fā),大大降低了研發(fā)輸入框動態(tài)透明顯示特效的研發(fā)技術(shù)難度,并且針對不同的計算機(jī)系統(tǒng)具有良好的可移植性, 更有助于縮短研發(fā)周期和降低研發(fā)投入成本;同時,本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法可以根據(jù)實際的應(yīng)用場合自由設(shè)置生動、富有交互性的動態(tài)透明顯示特效,還可以通過改進(jìn)進(jìn)一步提高其魯棒性能、完善特效顯示效果;本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法,能夠應(yīng)用于未提供窗體控件透明顯示API函數(shù)的計算機(jī)系統(tǒng)下運行的應(yīng)用軟件實現(xiàn)輸入框的動態(tài)透明顯示特效,豐富應(yīng)用軟件的UI視覺顯示效果,增強(qiáng)應(yīng)用軟件用戶的使用體驗感,提升應(yīng)用軟件產(chǎn)品市場競爭力和受眾用戶群。最后說明的是,以上實施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照實施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的宗旨和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,輸入框被激活啟動后,在輸入框獲得焦點的情況下,創(chuàng)建和運行輸入框控件;在輸入框失去焦點的情況下,獲取輸入框控件中的錄入字符后關(guān)閉輸入框控件,繪制含有所述錄入字符的輸入框圖片并顯示為輸入框,且通過動態(tài)改變所述輸入框圖片的透明度值,實現(xiàn)輸入框的動態(tài)透明顯示特效。
2.根據(jù)權(quán)利要求1所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,包括以下步驟1)輸入框被激活啟動,初始化透明度參數(shù)TR的值,并清空錄入字符緩存區(qū);然后執(zhí)行步驟2);2)判斷當(dāng)前時刻輸入框是否已獲得焦點;在輸入框獲得焦點的情況下,執(zhí)行步驟3);在輸入框失去焦點的情況下,執(zhí)行步驟4);3)創(chuàng)建輸入框控件,將錄入字符緩存區(qū)中存儲的內(nèi)容填入輸入框控件的字符錄入?yún)^(qū)域后,維持輸入框控件運行;直至輸入框失去焦點時,再復(fù)制輸入框控件中的錄入字符并覆蓋存儲至錄入字符緩存區(qū),然后關(guān)閉輸入框控件,執(zhí)行步驟4);4)判斷當(dāng)前時刻鼠標(biāo)是否位于輸入框的顯示區(qū)域內(nèi);若是,執(zhí)行步驟5);否則執(zhí)行步驟6);5)更新透明度參數(shù)TR的值TR=TR-Δ TRdn ;更新后,若TR ^ 0,直接執(zhí)行步驟7);若 TR<0,則令TR=0,然后再執(zhí)行步驟7);其中,Δ TRdn為透明度降值參數(shù),且Δ TRdn>0 ;6)更新透明度參數(shù)TR的值TR=TR+Δ TRup ;更新后,若TR < TRmax,直接執(zhí)行步驟 7);若TRXTRmax,則令TR=TRmax,然后再執(zhí)行步驟7);其中,Δ TRup為透明度增值參數(shù),且 Δ TRup>0 ;TRmax為預(yù)設(shè)的透明度上限值;7)獲取當(dāng)前錄入字符緩存區(qū)內(nèi)存儲的錄入字符,繪制含有所述錄入字符的輸入框圖片,并按當(dāng)前時刻透明度參數(shù)TR的值設(shè)置輸入框圖片的透明度值,將繪制的輸入框圖片作為輸入框加以更新顯示;經(jīng)延時At后,返回步驟2);8)循環(huán)執(zhí)行步驟2) 7),直至輸入框被關(guān)閉時,關(guān)閉輸入框控件并終止顯示輸入框圖片。
3.根據(jù)權(quán)利要求2所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟5)中“更新透明度參數(shù)TR的值”之前還包括判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時At后直接返回步驟2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作。
4.根據(jù)權(quán)利要求2所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟6)中“更新透明度參數(shù)TR的值”之前還包括判斷當(dāng)前是否已繪制透明度值為透明度上限值TRmax的輸入框圖片作為輸入框加以顯示;若是,則經(jīng)延時Δ t后直接返回步驟2);否則繼續(xù)執(zhí)行該步驟的后續(xù)操作。
5.根據(jù)權(quán)利要求2所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟 3)中“創(chuàng)建輸入框控件”之前還包括判斷當(dāng)前是否已繪制透明度值為0的輸入框圖片作為輸入框加以顯示;若否,則執(zhí)行步驟5);若是,則繼續(xù)執(zhí)行該步驟的后續(xù)操作。
6.根據(jù)權(quán)利要求2所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟7)中“繪制含有所述錄入字符的輸入框圖片”的具體流程為a)預(yù)先存儲有輸入框的字符錄入?yún)^(qū)域背景圖片模板和邊框區(qū)域圖片模板;b)調(diào)用存儲的字符錄入?yún)^(qū)域背景圖片模板繪制輸入框的字符錄入?yún)^(qū)域;c)在繪制的輸入框字符錄入?yún)^(qū)域中繪制錄入字符;d)調(diào)用存儲的邊框區(qū)域圖片模板繪制輸入框的邊框。
7.根據(jù)權(quán)利要求2飛中任一項所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟1)中,初始化透明度參數(shù)TR的值為0。
8.根據(jù)權(quán)利要求2飛中任一項所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述步驟1)中,初始化透明度參數(shù)TR的值為透明度上限值TRmax。
9.根據(jù)權(quán)利要求2飛中任一項所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述透明度上限值TRmax的取值范圍為50°/Γ90%。
10.根據(jù)權(quán)利要求2飛中任一項所述的輸入框動態(tài)透明顯示特效實現(xiàn)方法,其特征在于,所述透明度降值參數(shù)Δ TRdn的取值范圍為59Γ20% ;所述透明度增值參數(shù)Δ TRup的取值范圍為59Γ20% ;所述延時Δ t的取值范圍為2(T200ms。
全文摘要
本發(fā)明提供了一種輸入框動態(tài)透明顯示特效實現(xiàn)方法,其在輸入框被激活啟動后,在輸入框獲得焦點的情況下,創(chuàng)建和運行輸入框控件;在輸入框失去焦點的情況下,獲取輸入框控件中的錄入字符后關(guān)閉輸入框控件,繪制含有所述錄入字符的輸入框圖片并顯示為輸入框,且通過動態(tài)改變所述輸入框圖片的透明度值,實現(xiàn)輸入框的動態(tài)透明顯示特效。本發(fā)明的輸入框動態(tài)透明顯示特效實現(xiàn)方法有助于縮短研發(fā)周期和降低研發(fā)投入成本,能夠應(yīng)用于未提供窗體控件透明顯示API函數(shù)的計算機(jī)系統(tǒng)下運行的應(yīng)用軟件實現(xiàn)輸入框的動態(tài)透明顯示特效,豐富應(yīng)用軟件的UI視覺顯示效果,增強(qiáng)應(yīng)用軟件用戶的使用體驗感,提升應(yīng)用軟件產(chǎn)品市場競爭力和受眾用戶群。
文檔編號G06F3/048GK102541554SQ201110444348
公開日2012年7月4日 申請日期2011年12月27日 優(yōu)先權(quán)日2011年12月27日
發(fā)明者方順豹 申請人:重慶新媒農(nóng)信科技有限公司