一種JTextArea組件行距處理方法和裝置制造方法
【專利摘要】本申請?zhí)峁┝艘环NJ Text Area組件行距處理方法,包括:創(chuàng)建J Text Area對象;定制UI類;定制UI類的換行文本視圖(View)類;定制UI類的單行文本視圖(View)類;將定制的UI配置給J Text Area;根據(jù)定制的UI配置顯示界面。本發(fā)明實(shí)施例還提供了對應(yīng)的裝置。本發(fā)明實(shí)施例通過一系列的定制,實(shí)現(xiàn)了在J Text Area組件中行距的可變設(shè)定。
【專利說明】—種JTextArea組件行距處理方法和裝置
【技術(shù)領(lǐng)域】
[0001]本申請涉及Java Swing圖形界面應(yīng)用【技術(shù)領(lǐng)域】,特別是涉及一種J Text Area組件行距處理方法和裝置。
【背景技術(shù)】
[0002]Java Swing圖形界面系統(tǒng)中,J Text Area組件是一個顯示純文本的多行區(qū)域。當(dāng)利用J Text Area組件顯示多行文本時,行距的控制只能通過調(diào)整字體大小被動調(diào)整。這樣會導(dǎo)致調(diào)整的度量值不可見,需多次調(diào)整,而且難以控制到指定大?。欢覟榱诉_(dá)到合適的行距,而不得不改變字體,會使文本的美觀性變得很差。因此,傳統(tǒng)的J Text Area組件通過調(diào)整字體大小改變行距的方法不僅效率低,缺乏度量值,而且在很多場合不適用。
【發(fā)明內(nèi)容】
[0003]本申請所要解決的技術(shù)問題是提供一種J Text Area組件行距處理方法可以方便的按照用戶設(shè)定值改變行距。
[0004]相應(yīng)的,本申請還提供了對應(yīng)的J Text Area組件行距處理裝置。
[0005]為了解決上述問題,本申請公開了一種J Text Area組件行距處理方法,包括:
[0006]創(chuàng)建J Text Area 對象;
[0007]定制Π類;
[0008]定制UI類的換行文本視圖(View)類;
[0009]定制UI類的單行文本視圖(View)類;
[0010]將定制的UI配置給J Text Area ;
[0011]根據(jù)定制的Π配置顯示界面。
[0012]進(jìn)一步,所述創(chuàng)建J Text Area對象包括:
[0013]建立界面顯示環(huán)境;
[0014]新建J Text Area對象,配置換行顯示文本。
[0015]進(jìn)一步,所述定制UI類包括:
[0016]新建UI 類,所述 UI 類繼承 Basic Text Area UI ;
[0017]在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法;
[0018]覆寫UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定J Text Area是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
[0019]進(jìn)一步,所述定制換行文本視圖(View)類包括:
[0020]新建My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,實(shí)現(xiàn)Tab Expander 接口 ;
[0021]在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法;
[0022]覆寫load Children (View Factory f)方法,所述 load Children (View Factoryf)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
[0023]改寫Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
[0024]進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0025]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0026]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0027]覆寫model ToView(int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
[0028]本申請還提供了一種J Text Area組件行距處理裝置,包括:
[0029]創(chuàng)建模塊,用于創(chuàng)建J Text Area對象;
[0030]定制模塊,用于定制UI類;定制UI類的換行文本視圖(View)類;定制UI類的單行文本視圖(View)類;
[0031]配置模塊,用于將定制的UI配置給J Text Area ;
[0032]顯示模塊,用于根據(jù)定制的UI配置顯示界面。
[0033]進(jìn)一步,所述創(chuàng)建模塊還用于:
[0034]建立界面顯示環(huán)境;
[0035]新建J Text Area對象,配置換行顯示文本。
[0036]進(jìn)一步,所述定制模塊還用于:
[0037]新建UI 類,所述 UI 類繼承 Basic Text Area UI ;
[0038]在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法;
[0039]覆寫UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定J Text Area是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
[0040]進(jìn)一步,所述定制模塊還用于:
[0041]新建My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,實(shí)現(xiàn)Tab Expander 接口 ;
[0042]在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法;
[0043]覆寫loadChildren(ViewFactory f)方法,所述 loadChildren(ViewFactory f)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
[0044]改寫Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
[0045]進(jìn)一步,所述定制模塊還用于:
[0046]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0047]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0048]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
[0049]與現(xiàn)有技術(shù)相此,本申請包括以下優(yōu)點(diǎn):通過一系列的定制,實(shí)現(xiàn)了在J TextArea組件中行距的可變設(shè)定。
【專利附圖】
【附圖說明】
[0050]圖1是本發(fā)明一種J Text Area組件行距處理方法一實(shí)施例的流程示意圖;
[0051]圖2是本發(fā)明一種JTextArea組件行距處理方法一實(shí)施例的流程圖;
圖3是本發(fā)明一種JTextArea組件行距處理裝置一實(shí)施例的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0052]為使本申請的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和【具體實(shí)施方式】對本申請作進(jìn)一步詳細(xì)的說明。
[0053]參照圖1,示出了本申請一種JTextArea組件行距處理方法,包括:
[0054]步驟S 101、創(chuàng)建 J Text Area 對象;
[0055]進(jìn)一步,在創(chuàng)建文本過程中如果需要進(jìn)行行距設(shè)置可以:
[0056]建立界面顯示環(huán)境;
[0057]新建J Text Area對象,配置換行顯示文本。
[0058]本發(fā)明實(shí)施例的流程示意圖也可參考圖2。
[0059]步驟S102、定制UI類;
[0060]進(jìn)一步,所述定制UI類包括:
[0061]新建UI 類,所述 UI 類繼承 Basic Text Area UI ;
[0062]在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法;
[0063]覆寫UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定J Text Area是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
[0064]在步驟S102中主要針對Π類進(jìn)行定制,使得可以進(jìn)行后續(xù)的換行文本視圖(View)類和單行文本視圖(View)類的定制。
[0065]步驟S103、定制UI類的換行文本視圖(View)類;
[0066]進(jìn)一步,所述定制換行文本視圖(View)類包括:
[0067]新建My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,買現(xiàn) Tab Expander 接口 ;
[0068]在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法;
[0069]覆寫load Children (View Factory f)方法,所述 load Children (View Factoryf)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
[0070]改寫Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
[0071]步驟S104、定制UI類的單行文本視圖(View)類;
[0072]進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0073]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0074]覆寫paint (Graphics g, Shape a)方法,按指定 rowSpacing 繪制各行文本;
[0075]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0076]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0077]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0078]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0079]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0080]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0081]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0082]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0083]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0084]覆寫model To View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。進(jìn)一步,所述定制單行文本視圖(View)類包括:
[0085]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0086]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0087]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
[0088]步驟S105、將定制的UI配置給J Text Area ;
[0089]步驟S106、根據(jù)定制的UI配置顯示界面。
[0090]將定制好的UI配置給J Text Area后,J Text Area按照所述UI配置進(jìn)行界面顯示,從而實(shí)現(xiàn)行距的設(shè)定。
[0091]對于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的此較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
[0092]參照圖3為本發(fā)明一種J Text Area組件行距處理裝置的結(jié)構(gòu)示意圖,包括:
[0093]創(chuàng)建模塊31,用于創(chuàng)建J Text Area對象;
[0094]定制模塊32,用于定制UI類;定制UI類的換行文本視圖(View)類;定制UI類的單行文本視圖(View)類;
[0095]配置模塊33,用于將定制的UI配置給J Text Area ;
[0096]顯示模塊34,用于根據(jù)定制的UI配置顯示界面。
[0097]進(jìn)一步,所述創(chuàng)建模塊31還用于:
[0098]建立界面顯示環(huán)境;
[0099]新建J Text Area對象,配置換行顯示文本。
[0100]進(jìn)一步,所述定制模塊32還用于:
[0101]新建UI 類,所述 UI 類繼承 Basic Text Area UI ;
[0102]在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法;
[0103]覆寫UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定J Text Area是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
[0104]進(jìn)一步,所述定制模塊32還用于:
[0105]新建My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,實(shí)現(xiàn)Tab Expander 接口 ;
[0106]在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法;
[0107]覆寫load Children (View Factory f)方法,所述 load Children (View Factoryf)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
[0108]改寫Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
[0109]進(jìn)一步,所述定制模塊32還用于:
[0110]在My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View;
[0111]覆寫paint (Graphics g, Shape a)方法,按指定 row Spacing 繪制各行文本;
[0112]覆寫modelTo View (int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
[0113]本說明書中的各個實(shí)施例均采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似的部分互相參見即可。
[0114]以上對本申請所提供的一種J Text Area組件行距處理方法和裝置,進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本申請的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
【權(quán)利要求】
1.一種J Text Area組件行距處理方法,其特征在于,包括: 創(chuàng)建J Text Area對象; 定制UI類; 定制UI類的換行文本視圖(View)類; 定制UI類的單行文本視圖(View)類; 將定制的UI配置給JTextArea ; 根據(jù)定制的Π配置顯示界面。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述創(chuàng)建JTextArea對象包括: 建立界面顯示環(huán)境; 新建J Text Area對象,配置換行顯示文本。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述定制UI類包括: 新建UI類,所述UI類繼承Basic Text AreaUI ; 在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法; 覆寫 UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定 JText Area是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述定制換行文本視圖(View)類包括: 新建 My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,實(shí)現(xiàn) TabExpander 接 口 ; 在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法; 覆寫 load Children (View Factory f)方法,所述 load Children (View Factory f)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
改寫 Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述 update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述定制單行文本視圖(View)類包括: 在 My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View; 覆寫paint (Graphics g, Shape a)方法,按指定row Spacing繪制各行文本; 覆寫model ToView(int pos,Shape a,Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
6.一種J Text Area組件行距處理裝置,其特征在于,包括: 創(chuàng)建模塊,用于創(chuàng)建J Text Area對象; 定制模塊,用于定制UI類;定制UI類的換行文本視圖(View)類;定制UI類的單行文本視圖(View)類; 配置模塊,用于將定制的UI配置給J Text Area ; 顯示模塊,用于根據(jù)定制的UI配置顯示界面。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述創(chuàng)建模塊還用于: 建立界面顯示環(huán)境; 新建J Text Area對象,配置換行顯示文本。
8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述定制模塊還用于: 新建UI類,所述UI類繼承Basic Text Area UI ; 在UI類中新增全局變量(int)row Spacing,所述全局變量中封裝row Spacing的設(shè)置和獲取方法; 覆寫 UI 類的 create (Element elem)方法,當(dāng)所述 create (Element elem)方法判定JTextArea是換行顯示文本,則定制單行文本視圖(View)類;否則生成Plain View對象,并返回。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述定制模塊還用于: 新建 My Wrapped Plain View,所述 My Wrapped Plain View 繼承 Box View,實(shí)現(xiàn) TabExpander 接 口 ; 在My Wrapped Plain View中新增全局變量(int)row Spacing,所述新增全局變量(int)row Spacing封裝row Spacing的設(shè)置和獲取方法; 覆寫 load Children (View Factory f)方法,所述 load Children (View Factory f)方法的子視圖使用單行文本視圖(View)對象My Wrapped Line ;
改寫 Wrapped Plain View 類 update Children (Document Event e, Shape a)方法,所述 update Children (Document Event e, Shape a)方法子視圖使用單行文本視圖(View)對象 My Wrapped Line。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述定制模塊還用于: 在 My Wrapped Plain View 中新建內(nèi)部類 My Wrapped Line,繼承 View; 覆寫paint (Graphics g, Shape a)方法,按指定row Spacing繪制各行文本; 覆寫 model To View(int pos, Shape a, Posit1n.Bias b)方法,控制光標(biāo)大小與位置,同步文本模型與視圖。
【文檔編號】G06F9/44GK104267930SQ201310344273
【公開日】2015年1月7日 申請日期:2013年7月31日 優(yōu)先權(quán)日:2013年7月31日
【發(fā)明者】黎爾, 賈西貝 申請人:深圳市華傲數(shù)據(jù)技術(shù)有限公司