專利名稱:一種設置皮膚元素顯示效果的方法和裝置的制作方法
技術領域:
本發(fā)明涉及計算機技術領域,特別涉及一種設置皮膚元素顯示效果的方法 和裝置。
背景技術:
皮膚引擎是開發(fā)者用來構建軟件界面的工具庫,4艮多開發(fā)者進行軟件開發(fā) 時,都會借助皮膚引擎構建出符合工作目標的程序界面。
皮膚引擎攜帶有一個界面庫,包括各種皮膚元素按鈕(Button)、圖片 (picture )、文本(Text)和菜單(Menu)等。每個皮膚元素都可以提供自身的 圖形。同時皮膚引擎還提供了一個描述工具,用于描述如何通過這些皮膚元素 構成程序界面,比如有的皮膚引擎使用XML ( extensible Markup Language,可 擴展標記語言)語言作為工具來描述組成程序界面的皮膚元素,描述的內容包 括皮膚元素的種類、數量以及皮膚元素的圖形在程序界面中的位置等。通過描 述工具的描述,使皮膚元素按照描述的關系進行組織,形成多個皮膚元素組成 的關系樹,關系樹上的每個節(jié)點都是一個皮膚元素的圖形。
現有技術中,在使用皮膚引擎繪制程序界面時,都是根據皮膚元素的關系 樹按照由底層至上層的順序繪制皮膚元素的圖形。在繪制圖形時,通常是由皮 膚引擎發(fā)起繪圖調用,然后依次將皮膚元素圖形的相關數據轉化為視圖輸出于 計算機屏幕上,按照由底層到上層的順序呈現出目標程序界面。
在對現有技術進行研究后,發(fā)明人發(fā)現
現有技術中,皮膚引擎按照由底層至上層的順序逐層繪制皮膚元素時,不 能對皮膚元素圖形的顯示效果進行編輯,皮膚元素圖形的顯示效果通常是靜態(tài) 的,設計的程序界面顯示效果比較單一,不能靈活多變地顯示皮膚元素圖形。
發(fā)明內容
為了能夠靈活的改變皮膚元素的顯示效果,本發(fā)明實施例提供了 一種設置
4皮膚元素顯示效果的方法和裝置。所述技術方案如下 一種設置皮膚元素顯示效果的方法,所述方法包括 為皮膚引擎中的每個皮膚元素增加一個調用接口 ; 利用所述調用接口根據預設的顯示效果繪制所述皮膚元素的圖形。 所述通過所述調用接口根據預設的顯示效果繪制所述皮膚元素,包括 通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素的圖形; 根據預設的顯示效果對獲取的所述皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。
所述方法還包括
根據預設的顯示位置對獲取的所述皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。 所述方法還包括
通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素的圖形; 根據預設的顯示大小對獲取的所迷皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。 所述顯示效果包括動態(tài)顯示效果和靜態(tài)顯示效果。 一種設置皮膚元素顯示效果的裝置,所述裝置包括 添加模塊,用于為皮膚引擎中的每個皮膚元素增加一個調用接口 ; 效果繪制模塊,用于利用所述調用接口根據預設的顯示效果繪制所述皮膚 元素的圖形。
所述效果繪制模塊,包括-.
獲取單元,用于通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素 的圖形;
編輯單元,用于根據預設的顯示效果對獲取的所述皮膚元素的圖形進行編
輯;
繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。 所述裝置還包括位置繪制模塊,所述位置繪制模塊,包括 獲取單元,用于通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素 的圖形;
5編輯單元,用于根據預設的顯示位置對獲取的所述皮膚元素的圖形進行編
輯;
繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。
所述裝置還包括比例繪制模塊,所述比例繪制模塊,包括 的圖形;
編輯單元,用于根據預設的顯示比例對獲取的所述皮膚元素的圖形進行編
輯;
繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。 所述顯示效果包括動態(tài)顯示效果和靜態(tài)顯示效果。 本發(fā)明實施例提供的技術方案帶來的有益效果是
通過在皮膚元素中增加一個調用接口 ,在利用皮膚引擎進行界面設計時, 通過該調用接口獲取皮膚元素的圖形,并可以根據預設的顯示效果對皮膚元素 的圖形進行編輯,使得皮膚引擎可以靈活多變的實現各種界面效果。
圖l是本發(fā)明實施例1提供的設置皮膚元素顯示效果的方法流程圖; 圖2是本發(fā)明實施例2提供的設置皮膚元素顯示效果的方法流程圖; 圖3是本發(fā)明實施例3提供的設置皮膚元素顯示效果的裝置的結構示意圖。
具體實施例方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明 實施方式作進一步地詳細描述。 實施例1 ,
參見圖1,為了能夠靈活的改變皮膚元素的顯示效果,本實施例提供了一種
設置皮膚元素顯示效果的方法,該方法包括
101:為皮膚引擎中的每個皮膚元素增加一個調用接口 。
在本發(fā)明實施例中,通過在每個皮膚元素中增加一個調用接口 ,使得外部
的程序或函數在通過該調用接口獲取皮膚元素的圖形時,可以對皮膚元素圖形
的顯示效果進行編輯。
6比如,以皮膚元素圖片picture為例,圖片picture的類為Class Cpicture,定 義如下
Class Cpicture
Int GetLeft(); Int GetRight(); Int GetTop();
Int GetBottom(); 〃設置坐標 Void SetLeft(); Void SetRight(); Void SetTop();
Void SetRight(); 〃獲取坐標 SetlmagePath(strPath); 〃i殳計路徑 Void Dmw(HDC hdc); 〃繪圖函數 };
由上述定義可知,在Cpicture的定義中包括設置坐標、獲取坐標、設置 圖片元素的圖片文件路徑以及在屏幕上繪圖的函數Draw(HDC hdc)。
為了使圖片picture元素能被外部程序或函數調用并編輯,在圖片picture元 素的類中,增力口一個Bitmap* getpresentation ()的才妄口,沖各式如下
class Cpicture
Int GetLeft(); Int GetRight(); Int GetTop(); Int GetBo加m(); Void SetLeft(); Void SetRight(); Void SetTop(); Void SetRight(); SetImagePath(strPath);
7Void Draw(HDC hdc);
Bitmap* GetPresentation(); 〃增力。的調用^妄口 };
增加了 GetPresentation的4妄口的圖片(picture )元素在凈皮外部程序或函凌t調 用時,可以對圖片(picture )元素的圖形的顯示效果進行編輯。
102:利用該調用接口根據預設的顯示效果繪制該皮膚元素的圖形。
具體的,在使用皮膚引擎繪制程序界面時,如果需要繪制某個皮膚元素的 圖形,則先調用該皮膚元素的調用接口獲取該皮膚元素的圖形,然后根據預"i殳 的顯示效果對獲取的皮膚元素的圖形進行編輯,最后對編輯后的皮膚元素的圖 形進行繪制。使繪制的皮膚元素的圖形能夠以預設的顯示效果呈現出來。預設 的顯示效果可以是動態(tài)的,比如可以為逐漸擴大并逐漸變淡直至消失的效果, 或者是滾動顯示的效果。在不需要動態(tài)顯示皮膚元素的圖形時,預設的顯示效 果也可以為靜態(tài)的顯示效杲。
具體的,仍以圖片(picture)元素為例,當需要某一個圖片(picture)元素 的圖形P1顯示在界面中,且顯示效果為逐漸擴大并逐漸變淡直至消失。則可以 使用函數調用圖片(picture)元素的調用接口以獲取圖形Pl,并對圖形Pl進行 顯示效果的編輯,即根據預設的顯示效果,在該函數中配置相應的顯示效果參 數,然后對圖形P1進行繪制,實現動態(tài)顯示圖形Pl的要求。
顯示圖形的函凄史可以為g.DrawImage,實現圖形動態(tài)顯示的偽fC碼如下
CPiturePl;
bmpPl = Pl.GetPresentation(); Graphics g(hdc); For(循環(huán))
g.DrawImage(bmpPl, Kl, K2);
由上述偽代碼可以看出,通過增加GetPresentation()的調用接口 ,使函數 g.DrawIraage在獲取圖形Pl時,可以對圖形Pl的顯示效果進行編輯,即將bmpPl 做為函數g.DrawImage的參數,并配置相應的顯示效果參數Kl和K2,實現動 態(tài)顯示圖片的目的。其中,配置的參數Kl表示圖形在界面中的尺寸逐漸擴大,配置的參數K2表示圖形的不透明度從100%開始逐漸減低。
補充說明的是在實現了皮膚元素圖形的動態(tài)顯示后,為了使皮膚元素的 圖形顯示在適當的位置,還可以通過調用該調用接口獲取該皮膚元素的圖形, 根據預設的顯示位置對獲取的該皮膚元素的圖形進行編輯,并對編輯后的該皮 膚元素的圖形進行繪制,使繪制的皮膚元素的圖形能夠在預設的顯示位置呈現 出來。此外,繪制皮膚元素的圖形時,需要考慮的不僅包括顯示位置,還包括 圖形的顯示比例等,此時就需要進一步對皮膚元素的圖形進行編輯,編輯的方 法與編輯圖形位置的方法類似。
仍以顯示圖片(picture)元素圖形Pl為例,當需要在程序界面上顯示圖形 Pl,且顯示效果為逐漸擴大并逐漸變淡直至消失,顯示在程序界面上的坐標為 (x, y),顯示比例大小為源圖片文件的60%時,則可以在函數中配置相應的顯 示效果參數、顯示位置參數和顯示大小參數,然后對圖形P1進行繪制,實現圖 形Pl的動態(tài)顯示。具體的偽代碼如下
CPiturePl;
bmpPl = Pl.GetPresentation(); Graphics g(hdc); For(循環(huán))
g.DrawImage(bmpPl, Kl, K2, K3, K4);
其中,配置的參數K1表示圖形在界面中的尺寸逐漸擴大,配置的參數K2 表示圖形的不透明度從100%開始逐漸減低。配置的參數K3表示圖形Pl的坐標 (x, y),配置的參數K4表示圖形Pl的大小為源圖片文件的60%。
需要強調的是本實施例僅以繪制圖片picture元素圖形的動態(tài)顯示為例, 對于其他皮膚元素的圖形,比如按鈕(Button )、菜單(Menu)和文本(Text) 等元素的圖形進行動態(tài)顯示效果的繪制時,繪制方法與繪制圖片(picture)元素 圖形的方法類似,此處不再贅述。
本發(fā)明實施例通過在皮膚元素中增加一個調用接口 ,在利用皮膚引擎進行 界面設計時,通過該調用接口獲取皮膚元素的圖形,并才艮據預設的顯示效果對 皮膚元素的圖形進行編輯,使得皮膚引擎可以靈活多變的實現各種界面效果。
9實施例2
本實施例提供了一種設置皮膚元素顯示效果的方法,在實施例1的基礎上 進行了擴展,使得設計動態(tài)皮膚元素圖形的方法可以應用于多種操作界面,如 窗口界面,對話框等。
在本發(fā)明實施例中,可以根據實際應用的需要,預先在皮膚引擎的資源庫 中添加所需的皮膚元素以及皮膚元素的圖形,使得設計人員在對操作界面進行 設計時,可以直接從皮膚引擎的資源庫中調用這些皮膚元素。本發(fā)明實施例提
供的方法如下
201:為皮膚引擎中的每個皮膚元素增加一個調用接口。
具體的,為皮膚引擎中的每個皮膚元素增加調用接口的方法與101相同,
此處不再贅述。在皮膚元素中增加了調用接口后,就可以對皮膚元素圖形的顯
示效果進行編輯。
202:在操作界面中添加所需的皮膚元素。
具體的,可以采用從皮膚引擎的資源庫中調用皮膚元素的方法,在操作界 面中增加皮膚元素。
比如,在一個窗口界面中,需要新添加一個皮膚元素按鈕,則可以從皮膚 引擎的資源庫中調用皮膚元素按鈕,并將該按鈕添加到窗口界面中。
203:為添加的皮膚元素選4奪合適的皮膚元素圖形。
具體的,在操作界面中添加了皮膚元素后,還要根據具體需要選擇該皮膚 元素的圖形。比如,在202中選擇了需要添加按鈕,則在203中,需要進一步 選擇需要添加的按鈕的圖形,如根據窗口界面的設計需求選擇添加一個菱形按 鈕。其中,該按鈕的圖形是預先添加在皮膚引擎的資源庫中的,以便于在利用 皮膚引擎進行窗口界面的設計時,能直接從皮膚引擎的資源庫中調用該按4丑的 圖形。
204:利用該調用接口根據預設的顯示效果繪制該皮膚元素的圖形。 具體的,在窗口界面中繪制上述皮膚元素圖形的方法與102相同,此處不
再贅述。
在本發(fā)明實施例中,由于在皮膚元素中增加了調用接口,使得設計人員在 利用函數或程序獲取到皮膚元素的圖形時,可以對皮膚元素的圖形的顯示效果 進行編輯,即將皮膚元素的圖形做為參數,并配置相應的顯示效果參數以實現動態(tài)的顯示效果,具體方法與實施例l類似,此處不再贅述。
在此基礎上,由于在操作界面中添加的皮膚元素的圖形可以進行動態(tài)的設 計,因此,設計人員可以有更大的創(chuàng)意發(fā)揮空間,設計顯示效果更好的窗口界 面。比如,在上述添加了菱形按鈕的窗口界面中,可以將該菱形按鈕設計成秉 化色彩的顯示,或者由小變大的顯示,使得窗口界面的顯示更加豐富和靈活多 變。
需要強調的是本實施例僅以在窗口界面添加動態(tài)的皮膚元素圖形為例進 行說明,對于其他類型的操作界面,如在對話框等操作界面添加動態(tài)皮膚元素 圖形的方法與此類似,此處不再贅述。
本發(fā)明實施例通過在皮膚元素中增加一個調用接口 ,使得設計人員在利用 皮膚引擎進行操作界面的設計時,可以在操作界面中添加所需的皮膚元素圖形, 并可以根據預設的顯示效果對皮膚元素圖形進行編輯,使得操作界面的顯示效 果更加靈活多變。
實施例3
本發(fā)明實施例提供了一種設置皮膚元素顯示效果的裝置,參見圖3,包括 添加模塊301,用于為皮膚引擎中的每個皮膚元素增加一個調用接口 ; 效果繪制模塊302,用于利用該調用接口根據預設的顯示效果繪制該皮膚元 素的圖形。
具體的,本發(fā)明實施例中,可以通過該調用該調用接口獲取該皮膚元素的 圖形;根據預設的顯示效果對獲取的該皮膚元素的圖形進行編輯并繪制,使繪 制的皮膚元素圖形能夠以預設的顯示效果呈現出來。預設的顯示效果可以為靜 態(tài)的顯示效果,也可以為動態(tài)的顯示效果。
該效果繪制模塊302,包括
獲取單元302a,用于通過調用該皮膚元素的該調用接口獲取該皮膚元素的 圖形;
編輯單元302b,用于根據預設的顯示效果對獲取的該皮膚元素的圖形進行 編輯;
繪制單元302c,用于對編輯后的該皮膚元素的圖形進行繪制。
進一步的,在實現了皮膚元素圖形的動態(tài)顯示效果后,為了使皮膚元素的
ii圖形顯示在正確的位置,還可以通過調用該調用接口獲取該皮膚元素的圖形;
根據預設的顯示位置對獲取的該皮膚元素的圖形進行編輯并繪制;使繪制的皮
膚元素的圖形能夠在預設的顯示位置上呈現出來。
此時,該裝置還包括位置繪制模塊303,該位置繪制模塊303,包括 獲取單元303a,用于通過調用該皮膚元素的該調用4妄口獲取該皮膚元素的
圖形;
編輯單元303b,用于根據預設的顯示位置對獲取的該皮膚元素的圖形進行 編輯;
繪制單元303c,用于對編輯后的該皮膚元素的圖形進行繪制。 為了使皮膚元素的圖形以合適的比例顯示在程序界面中,還可以通過調用 該調用接口獲取該皮膚元素的圖形;根據預設的顯示比例對獲取的該皮膚元素 的圖形進行編輯并繪制,使繪制的皮膚元素的圖形能夠以預設的顯示比例呈現 出來。
此時,該裝置還包括比例繪制模塊304,該比例繪制模塊304,包括 獲取單元304a,用于通過調用該皮膚元素的該調用接口獲取該皮膚元素的 圖形;
編輯單元304b,用于根據預設的顯示比例對獲取的該皮膚元素的圖形進行 編輯;
繪制單元304c,用于對編輯后的該皮膚元素的圖形進行繪制。 本發(fā)明實施例通過在皮膚元素中增加一個調用接口 ,在利用皮膚引擎進行 界面設計時,通過該調用接口獲取皮膚元素的圖形,并可以根據預設的顯示效 杲對皮膚元素的圖形進行編輯,使得皮膚引擎可以靈活多變的實現各種界面效 果。
本發(fā)明實施例可以利用軟件實現,相應的軟件程序可以存儲在可讀取的存 儲介質中,例如,路由器的硬盤、緩存或光盤中。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的 精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的 保護范圍之內。
1權利要求
1、一種設置皮膚元素顯示效果的方法,其特征在于,所述方法包括為皮膚引擎中的每個皮膚元素增加一個調用接口;利用所述調用接口根據預設的顯示效果繪制所述皮膚元素的圖形。
2、根據權利要求1所述的設置皮膚元素顯示效果的方法,其特征在于,所 L過所述調用4妾口才艮據預設的顯示效杲繪制所述皮膚元素,包括 通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素的圖形; 根據預設的顯示效果對獲取的所述皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。
3、根據權利要求1所述的設置皮膚元素顯示效果的方法,其特征在于,所 述方法還包括通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素的圖形; 才艮據預設的顯示位置對獲取的所述皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。
4、根據權利要求1所述的設置皮膚元素顯示效果的方法,其特征在于,所 述方法還包:^舌通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素的圖形; 根據預設的顯示大小對獲取的所述皮膚元素的圖形進行編輯; 對編輯后的所述皮膚元素的圖形進行繪制。
5、根據權利要求1所述的設置皮膚元素顯示效果的方法,其特征在于,所 述顯示效果包括動態(tài)顯示效果和靜態(tài)顯示效果。
6、 一種設置皮膚元素顯示效果的裝置,其特征在于,所述裝置包括 添加模塊,用于為皮膚引擎中的每個皮膚元素增加一個調用接口; 效果繪制模塊,用于利用所述調用接口根據預設的顯示效杲繪制所述皮膚元素的圖形。
7、根據權利要求6所述的設置皮膚元素顯示效果的裝置,其特征在于,所 述效果繪制模塊,包括獲取單元,用于通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素 的圖形;編輯單元,用于根據預設的顯示效果對獲取的所述皮膚元素的圖形進行編輯;繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。
8、根據權利要求6所述的設置皮膚元素顯示效果的裝置,其特征在于,所 述裝置還包括位置繪制模塊,所述位置繪制模塊,包括的圖形;編輯單元,用于根據預設的顯示位置對獲取的所述皮膚元素的圖形進行編輯;繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。
9、根據權利要求6所述的設置皮膚元素顯示效果的裝置,其特征在于,所 述裝置還包括比例繪制模塊,所述比例繪制模塊,包括獲取單元,用于通過調用所述皮膚元素的所述調用接口獲取所述皮膚元素 的圖形;編輯單元,用于根據預設的顯示比例對獲取的所述皮膚元素的圖形進行編輯;繪制單元,用于對編輯后的所述皮膚元素的圖形進行繪制。
10、根據權利要求6所述的設置皮膚元素顯示效果的裝置,其特征在于,所述顯示效果包括動態(tài)顯示效果和靜態(tài)顯示效果。
全文摘要
本發(fā)明公開了一種設置皮膚元素顯示效果的方法和裝置,涉及計算機技術領域。所述方法包括為皮膚引擎中的每個皮膚元素增加一個調用接口;利用所述調用接口根據預設的顯示效果繪制所述皮膚元素的圖形。所述裝置包括添加模塊和效果繪制模塊。本發(fā)明實施例通過在皮膚元素中增加一個調用接口,在利用皮膚引擎進行界面設計時,通過該調用接口獲取皮膚元素的圖形,并可以根據預設的顯示效果對皮膚元素的圖形進行編輯,使得皮膚引擎可以靈活多變的實現各種界面效果。
文檔編號G06F9/44GK101493768SQ20091008020
公開日2009年7月29日 申請日期2009年3月13日 優(yōu)先權日2009年3月13日
發(fā)明者登 羅 申請人:騰訊科技(深圳)有限公司