低級界面開發自動實現界面反轉的方法及裝置的製作方法
2023-12-08 20:55:56 1
專利名稱:低級界面開發自動實現界面反轉的方法及裝置的製作方法
技術領域:
本發明涉及一種計算機軟體開發技術,尤其是一種在低級界面開發中實現界面反轉的方法。
背景技術:
J2me (Java 2Micro Edition)是一種主要針對消費類電子設備的開放平臺,例如蜂窩電話和可視電話、數字機頂盒、汽車導航系統等等。它將Java語言的與平臺無關的特性移植到小型電子設備上,允許移動無線設備之間共享應用程式。在J2me低級界面開發的過程之中,面對軟體的國際化,在設計軟體的時候不得不考慮不同國家閱讀習慣是不同的,雖然大多數國家人們的閱讀習慣都是從左到右,但是在阿拉伯世界,他們的習慣都是從右到左。因此,如何在一套軟體之中,實現界面的反轉功能,成為在設計軟體的時候,所不得不考慮的一種因素。並且,在軟體開發的時候,如果能用最少的代碼,最高的效率來滿足這些需求,對於開發人員是重中之中。一般來說,在當前J2me低級界面開發的時候,首先創建畫布,然後調用系統的畫筆在畫布上繪製各種圖形要素和軟體頁面。目前,如果需要在一種軟體之中同時支持兩種閱讀習慣,一般多是採用以下的兩種方法:第一,重新開發一套代碼去實現界面反轉功能,即在該種方法下,在每個頁面繪製時,通過控制當前的畫筆去實現圖片、字符串等的位置計算與繪製,進而實現界面的反轉效果。第二,通過一套代碼控制實現這兩種閱讀風格。在該種方法下,在每個頁面繪製時,通過增加閱讀風格的判斷步驟,由此,來控制當前畫筆,實現圖片、字符串等位置計算與繪製,從而實現開發一套代碼,可以生成兩種界面風格的軟體。上述兩種方法都存在著各自的缺點,具體來說:第一,如果開發兩套代碼,工作量是相當大,而且代碼不好維護,很難保證兩個版本的統一。第二,如果開發一套代碼共同維護,代碼冗餘量大,在每一個頁面繪製時都要考慮兩種情況,開發效率低下,一旦開發人員不統一,很容易出現問題。針對上述問題,本發明將提出一種實現界面反轉的方法,在集成兩種閱讀習慣的同時,儘量保持原有的開發習慣,不僅能提高開發效率,代碼維護也比較方便。
發明內容
本發明的目的是提供一種耗費代碼少、容易維護的低級界面開發自動實現界面反轉的方法,以解決現有技術中使用的方法開發效率低下的問題。本發明的主要構思是:通過對系統畫筆的改造,實現不同閱讀習慣功能的開發,提供靈活快速的開發途徑。
本發明的構思主要是基於下列工作原理:目前,J2me的低級界面屏幕都繼承自名為Canvas的屏幕類,而Canvas類提供了一系列鍵盤低級事件和繪圖接口,具體的繪圖操作則由一個名為Graphics的圖形類來完成。其中,Canvas即畫布,可以在其上繪製不同圖案;Graphics即畫筆。其中,Canvas提供了一個繪圖接口方法paint (Graphics g),凡是繼承Canvas的繼承類都必須實現paint 方法,因此可以在paint方法中實現屏幕的繪畫代碼。其中,所述paint (Graphics g)方法會傳入一個Graphics對象作為參數,可以把該對象當作是一個抽象的畫筆,調用Graphics的方法,就可以在這個畫布上繪圖。如圖1所示,是J2me低級界面的繪製坐標示意圖。由於現有的技術之中,都是將Graphics的圖形類傳遞到具體頁面上進行繪製操作,因此,在遇到同時支持從左到右的界面風格和從右到左的界面風格的時候,需要針對圖形的具體坐標位置和繪製方向進行重複的坐標位置計算以及代碼寫入,這直接帶來了很大的代碼冗餘和難以維護的問題。因此,發明人提出了一種自動實現界面反轉的方法,即事先將該圖形類按照一定規則進行變換,並將其存儲為用戶自定義的TGraphics的圖形類。這樣的話,在具體進行頁面繪製時,只要通過調用TGraphics去繪製頁面即可,就可以實現輸入相同的坐標關係,其在最終界面顯示終端中顯示的頁面是對稱的頁面效果了。根據本發明的一方面,提供了一種J2me低級界面開發實現界面反轉的方法,包括下列步驟:I)建立繪圖工作區域和工作環境;2)判斷是否需要對界面的頁面進行反轉;3)如果需要進行頁面反轉,則調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法;4)接收輸入指令並繪製頁面;其中,所述替換畫筆是對系統畫筆Graphics進行封裝改造得到的用戶自定義的TGraphics 圖形類。其中,所述替換畫筆和系統畫筆中的參數存在特定的對應關係,具體的可以是繪製坐標和繪製方向存在特定的對應關係。這種對應關係可以是:對於畫筆繪製坐標是X軸以屏幕水平垂直中心線做對稱,Y軸不變;對於畫筆繪製方向是左右方向相反、上下方向不變。根據本發明的另一發麵,還提供了一種用於J2me低級界面開發自動實現界面反轉的裝置包括:判斷模塊:用於判斷是否需要對界面的頁面進行反轉;接口調用模塊:用於當判斷出需要進行頁面反轉時,調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法;畫筆:用於接收輸入指令並繪製頁面;其中,所述替換畫筆是對系統畫筆Graphics進行封裝改造得到的用戶自定義的TGraphics圖形類。本發明彌補了在傳統的J2me開發中,調用系統畫筆實現從右到左閱讀習慣功能的不足。通過對系統畫筆的改造,實現不同閱讀習慣功能的開發,提供了靈活快速的開發途徑。本發明的其它特徵和優點將在隨後的說明書中闡述,並且,部分地從說明書中變得顯而易見,或者通過實施本發明而了解。本發明的目的和其他優點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現和獲得。下面通過附圖和實施例,對本發明的技術方案做進一步的詳細描述。
附圖用來提供對本發明的進一步理解,並且構成說明書的一部分,與本發明的實施例一起用於解釋本發明,並不構成對本發明的限制。在附圖中:圖1是J2me低級界面的繪製坐標示意圖;圖2是本發明的J2me低級界面開發自動實現反轉方法的一個實施例的流程圖;圖3是現有的J2me低級界面開發正常繪製頁面的方法示意圖;圖4是本發明中自動實現界面反轉的繪製方法示意圖。
具體實施例方式以下結合附圖對本發明的優選實施例進行說明,應當理解,此處所描述的優選實施例僅用於說明和解釋本發明,並不用於限定本發明。為了方便描述,在本發明中,以J2me低級界面開發為例,系統原有的Graphics圖形類被稱為系統畫筆,直接調用系統畫筆的接口方法Graphics, draw(繪圖參數)被稱為第一繪圖接口方法。與此相對應地,採用用戶自定義的函數對系統畫筆進行封裝改造後的圖形類被稱為替換畫筆(TGraphics),調用替換畫筆的接口方法TGraphics.draw(繪圖參數)則稱為第二繪圖接口方法。
根據本發明的目的,J2me低級界面開發自動實現界面反轉的方法主要包括下列步驟,如圖2所示:1.建立用戶自定義的TGraphics圖形類;2.建立繪圖工作區域和工作環境;3.判斷是否需要對界面的頁面進行反轉;4.如果需要進行頁面反轉,則調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法;5.接收輸入指令並繪製頁面。其中,步驟I是一個預備步驟,在本發明的部分實施例中,只需要步驟2-5也可實現發明目的,因此圖2中並不包括步驟I的內容。以下將以實現界面左右反轉為例,對這些步驟展開詳細的說明。1.建立用戶自定義的TGraphics圖形類。首先,我們對開發框架進行改造,即建立一個用戶自定義的TGraphics圖形類,並且,該圖形類是對現有的系統Graphics圖形類進行的封裝改造,畫筆繪製坐標以及方向有特定的對應關係。其中,採用現有的系統Graphics圖形類的繪圖接口方法,我們將其定義為第一繪圖接口方法;採用用戶自定義的替換TGraphics圖形類的繪圖接口方法,我們將其定義為
第二繪圖接口方法。其中,所述第一繪圖接口方法和第二繪圖接口方法中的每一個函數都是按照下列的轉換關係形成的:即在接收到相同的用戶輸入命令的時候,兩者的最終頁面效果是這樣對應的 第一,坐標X軸以屏幕X軸的垂直中心線找對稱點,Y軸不變;第二,繪製方向左右方向相反上下方向不變。當然,為了實現其他的界面順序,也可以是其他的對應關係。
在本實施例中,我們還是以左右順序變右左順序來進行描述:舉例來說,在採用第二繪圖接口方法時,我們輸入以下的指令k.drawlmage (img,1,1,左上),這個時候,系統將識別上述命令並進行繪圖緩存,其最終輸入到用戶終端的顯示效果,相當於在使用第一繪圖接口方法時,我們輸入以下的指令(設定屏幕寬度為screenffidth):g.drawlmage (img, screenffidth-1,1,右上)。drawlmage方法有四個參數:第一個參數表示圖片,第二個參數表示起始繪製的x坐標,第三個參數表示起始繪製的I坐標,第四個參數表示繪製的方向。S卩,兩者坐標X軸以屏幕水平垂直中心線做對稱,Y軸不變,並且,繪圖的方向是左右方向相反,上下方向不變。其中,g和k分別表示該方法是引用的是第一圖形函數庫還是第二圖形函數庫。在建立了上述的兩個Graphics的圖形類以後,在進行頁面繪製時,我們就可以實現界面的自動反轉了。2.建立繪圖工作區域和工作環境。本步驟屬於現有技術中,本發明對該步驟並未做出改進,因此就不再詳述。3.判斷是否需要對界面的頁面進行反轉。在進行Graphics的圖形類和繪圖方法調用前,先讀取系統配置文件,獲取版本信息,判斷是否需要對界面進行反轉。如果需要進行頁面反轉,則進入步驟4。如果不需要進行頁面反轉,則按照與現有技術一樣的步驟,調用第一繪圖接口方法。其中,第一繪圖接口方法包括,調用系統Graphics的圖形類;將操作者的輸入指令直接交給系統圖形類的識別標誌g去執行。在現有技術中,正常繪製頁面的方法如圖3所示:框架刷屏即建立繪圖工作區域和繪圖環境,然後傳遞系統畫筆,調用系統畫筆繪製頁面,最後展示正常頁面。由於這部分內容不屬於本發明的範圍,因此不再詳細描述。4.如果需要進行頁面反轉,則調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法。其中,所述第二繪圖接口方法包括,調用替換TGraphics的圖形類;將操作者的輸入指令交給替換圖形類的識別標誌k去執行,k將操作指令處理後再將處理後的指令交給系統圖形類的g去執行。在本發明中,J2me低級界面開發自動實現反轉的過程如圖4所示。它和圖3所示的現有技術的區別在於,在調用系統畫筆之前多了一個傳遞替換畫筆TGraphics的步驟。替換圖形類的識別標誌k對操作指令的處理就是對系統畫筆進行封裝,重寫原系統畫筆的方法,將繪製的起始坐標修改為對稱點,繪製方式同時改變,並調用系統畫筆去繪製頁面。5.接收輸入指令並繪製頁面。本步驟將最終頁面輸送到頁面顯示終端之中,現有技術中已經實現。一般地,我們事前通過顯示設備識別步驟,識別出當前的頁面顯示終端;此時,當圖像頁面繪製完成後或者完成部分頁面部分後,我們再將放置在緩存內的圖像輸送到頁面顯示終端之中。其中,如果調用的是第一繪圖接口方法,則最終出現的圖像是正常的代碼所應該得出的圖像;如果調用的是第二繪圖接口方法,則最終出現的圖像是經過反轉以後的頁面圖像。至此,我們僅僅通過替換一個圖形類文件,便可以使頁面開發人員在繪製頁面的時候,不需要考慮到界面是否需要反轉的問題,只需要按照正常的繪製方法,輸入命令和各種數值,就可以和普通的繪圖方法一樣繪製頁面。而最終頁面繪製的效果,則會依託於調用的具體的圖形類(g或者k)和繪圖接口方法(第一繪圖接口方法或第二繪圖接口方法),在最終的顯示終端中顯示出不同的顯示風格。因此,採用該種方法進行界面開發的話,只需要事前針對具體的圖形類進行改造,而不需要添加任何代碼或者採取冗餘的代碼進行專門轉換,就可以達到在界面開發的時候,界面自動實現反轉的技術效果;該方法具有較好的效果。為了更好地實現本發明,還提供了一種用於J2me低級界面開發自動實現界面反轉的,包括:判斷模塊:用於判斷是否需要對界面的頁面進行反轉;接口調用模塊:用於當判斷出需要進行頁面反轉時,調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法;畫筆:用於接收輸入指令並繪製頁面;其中,所述替換畫筆是對系統畫筆Graphics進行封裝改造得到的用戶自定義的TGraphics圖形類;自定義模塊:用於建立用戶自定義的TGraphics圖形類。其中,所述替換畫筆和系統畫筆中的參數存在特定的對應關係。在本發明的部分實施例中,所述替換畫筆和系統畫筆的繪製坐標和繪製方向存在特定的對應關係,即:對於畫筆繪製坐標是X軸以屏幕水平垂直中心線做對稱,Y軸不變;對於畫筆繪製方向是左右方向相反、上下方向不變。以上以實現界面左右反轉為例對本發明的技術內容做出了詳細說明。本領域技術人員依照該部分實施例的描述,可以對具體參數的設置做出改變,例如在用戶自定義的圖形類中將畫筆參數的修改定義為Y軸以屏幕垂直中心線找對稱、X軸不變,且繪製方向上下相反左右不變,即可實現界面上下反轉。本領域技術人員應能理解,根據本發明的詳細描述,還可以對本發明進行各種變形以實現其他方式的界面反轉,都屬於本發明的範圍。
權利要求
1.一種低級界面開發自動實現界面反轉的方法,其特徵在於,包括以下步驟: 1)建立繪圖工作區域和工作環境; 2)判斷是否需要對界面的頁面進行反轉; 3)如果需要進行頁面反轉,則調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法; 4)接收輸入指令並繪製頁面; 其中,所述替換畫筆是對系統畫筆Graphics進行封裝改造得到的用戶自定義的TGraphics 圖形類。
2.根據權利要求1所述的方法,其特徵在於,所述替換畫筆和系統畫筆中的參數存在特定的對應關係。
3.根據權利要求2所述的方法,其特徵在於,所述替換畫筆和系統畫筆的繪製坐標和繪製方向存在特定的對應關係。
4.根據權利要求3所述的方法,其特徵在於,所述特定的對應關係是:對於畫筆繪製坐標是X軸以屏幕水平垂直中心線做對稱,Y軸不變;對於畫筆繪製方向是左右方向相反、上下方向不變。
5.根據權利要求1所述的方法,其特徵在於,在步驟I)之前還包括建立用戶自定義的TGraphics圖形類的步驟。
6.一種用於低級界面開發自動實現界面反轉的裝置,其特徵在於,包括: 判斷模塊:用於判斷是否需要對界面的頁面進行反轉; 接口調用模塊:用於當判斷出需要進行頁面反轉時,調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法; 畫筆:用於接收輸入指令並繪製頁面; 其中,所述替換畫筆是對系統畫筆Graphics進行封裝改造得到的用戶自定義的TGraphics 圖形類。
7.根據權利要求6所述的裝置,其特徵在於,所述替換畫筆和系統畫筆中的參數存在特定的對應關係。
8.根據權利要求7所述的裝置,其特徵在於,所述替換畫筆和系統畫筆的繪製坐標和繪製方向存在特定的對應關係。
9.根據權利要求4所述的裝置,其特徵在於,所述特定的對應關係是:對於畫筆繪製坐標是X軸以屏幕水平垂直中心線做對稱,Y軸不變;對於畫筆繪製方向是左右方向相反、上下方向不變。
10.根據權利要求6所述的裝置,其特徵在於,還包括用於建立用戶自定義的TGraphics圖形類的自定義模塊。
全文摘要
本發明公開了一種低級界面開發自動實現界面反轉的方法,其特徵在於,包括以下步驟1)建立繪圖工作區域和工作環境;2)判斷是否需要對界面的頁面進行反轉;3)如果需要進行頁面反轉,則調用第二繪圖接口方法,所述第二繪圖接口方法是採用替換畫筆的繪圖接口方法;4)接收輸入指令並繪製頁面。本發明通過對系統畫筆的改造,實現不同閱讀習慣功能的開發,提供了靈活快速的開發途徑。
文檔編號G06F9/44GK103092596SQ20111034972
公開日2013年5月8日 申請日期2011年11月8日 優先權日2011年11月8日
發明者吳江, 申民, 馮瑞, 弋鵬翔, 費菲, 王創, 李世明, 朱玉軍, 王開鑫 申請人:中國移動通信集團陝西有限公司