本發(fā)明涉及軟件技術(shù)領(lǐng)域,特別涉及一種基于單一接口的工具提示系統(tǒng)及方法。
背景技術(shù):
在一般的軟件系統(tǒng)中,通過在一個(gè)軟件界面使用一個(gè)工具提示組件的方式來實(shí)現(xiàn)信息提示,這樣在使用時(shí)需要每個(gè)相關(guān)軟件界面添加一個(gè)工具提示組件。通過上述軟件提示處理方式,不但使用復(fù)雜、工作量大,而且軟件維護(hù)麻煩。特別是在大型軟件系統(tǒng)中,工具提示出現(xiàn)問題時(shí),需要多處進(jìn)行修改,有可能出現(xiàn)疏忽、漏改情況。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于單一接口的工具提示系統(tǒng)及方法以通過基于單一接口管理整個(gè)軟件的所有用戶提示信息,提高軟件的易用性。
本發(fā)明為了達(dá)到上述目的,采用的技術(shù)方案是:一種基于單一接口的工具提示系統(tǒng),包括工具提示管理器、控件倉(cāng)庫(kù)、事件管理器和顯示組件,其中:
所述工具提示管理器,用于將控件和所述控件的提示信息獲取方式增加到所述控件倉(cāng)庫(kù),以及將所述控件和所述事件管理器關(guān)聯(lián);
所述控件倉(cāng)庫(kù),用于存儲(chǔ)所述控件及對(duì)應(yīng)的提示信息獲取方式;
所述事件管理器,用于控制所述工具提示管理器從所述控件倉(cāng)庫(kù)獲取對(duì)應(yīng)的控件,以使所述工具提示管理器根據(jù)所述控件的所述提示信息獲取方式獲取所述提示信息;
所述顯示組件,用于在軟件界面顯示所述提示信息。
優(yōu)選地,所述事件管理器還用于:
確定所述提示信息的顯示時(shí)機(jī),當(dāng)需要顯示所述提示信息時(shí),發(fā)送控制信號(hào)至所述工具提示管理器,以使所述工具提示管理器根據(jù)所述控制信號(hào)從所述控件倉(cāng)庫(kù)中獲取對(duì)應(yīng)的控件。
優(yōu)選地,所述提示信息獲取方式包括靜態(tài)獲取方式或動(dòng)態(tài)獲取方式,所述工具提示系統(tǒng)還包括提示信息管理器,所述提示信息管理器用于管理所述提示信息獲取方式為靜態(tài)獲取方式的所有控件的提示信息。
優(yōu)選地,所述工具提示管理器還用于:
如果所述提示信息獲取方式為靜態(tài)獲取方式,所述工具提示管理器調(diào)用所述提示信息管理器來獲取所述提示信息;如果所述提示信息獲取方式為動(dòng)態(tài)獲取方式,所述工具提示管理器通過事件激發(fā)方式來獲取所述提示信息。
優(yōu)選地,所述事件管理器還用于:
在判斷所述控件不再有效時(shí),發(fā)送移除信號(hào)至所述工具提示管理器;
所述工具提示管理器還用于:
根據(jù)所述移除信號(hào)將所述控件從所述控件倉(cāng)庫(kù)移除。
相應(yīng)地,本發(fā)明還提供一種基于單一接口的工具提示方法,包括:
步驟s1:將控件和所述控件的提示信息獲取方式增加到控件倉(cāng)庫(kù);
步驟s2:將所述控件和事件管理器關(guān)聯(lián);
步驟s3:從所述控件倉(cāng)庫(kù)獲取對(duì)應(yīng)的控件,并根據(jù)所述控件的所述提示信息獲取方式獲取所述提示信息;
步驟s4:調(diào)用顯示組件在軟件界面顯示所述提示信息。
優(yōu)選地,所述提示信息獲取方式為靜態(tài)獲取方式或動(dòng)態(tài)獲取方式。
優(yōu)選地,所述步驟s3包括以下步驟:
所述步驟s3包括以下步驟:
步驟s31:確定所述提示信息的顯示時(shí)機(jī),當(dāng)需要顯示所述提示信息時(shí),發(fā)送控制信號(hào)至工具提示管理器;
步驟s32:根據(jù)所述控制信號(hào)從所述控件倉(cāng)庫(kù)中獲取所述控件和所述提示信息獲取方式;
步驟s33:根據(jù)所述提示信息獲取方式獲取所述提示信息。
優(yōu)選地,在所述步驟s33中,如果所述提示信息獲取方式為靜態(tài)獲取方式,調(diào)用提示信息管理器來獲取所述提示信息;如果所述提示信息獲取方式為動(dòng)態(tài)獲取方式,通過事件激發(fā)方式來獲取所述提示信息。
優(yōu)選地,還包括:
當(dāng)判斷所述控件不再有效時(shí),發(fā)送移除信號(hào);
根據(jù)所述移除信號(hào)將所述控件從所述控件倉(cāng)庫(kù)移除。
本發(fā)明有如下優(yōu)點(diǎn):本發(fā)明提供的基于單一接口的工具提示系統(tǒng)和方法,由工具提示管理器實(shí)現(xiàn)所有控件事件的統(tǒng)一管理;由控件倉(cāng)庫(kù)管理所有控件;由事件管理器管理提示信息顯示時(shí)機(jī);由顯示組件來顯示提示信息。當(dāng)一個(gè)控件需要做工具提示功能時(shí),調(diào)用工具提示管理器來增加工具提示功能;工具提示管理器把控件及提示信息獲取方式增加到控件倉(cāng)庫(kù);然后由工具提示管理器把此控件和事件管理器進(jìn)行關(guān)聯(lián);事件管理器在要顯示提示信息時(shí),調(diào)用提示信息管理器來獲取提示信息;獲取提示信息后,調(diào)用顯示組件顯示提示信息。由此,實(shí)現(xiàn)了通過單一接口管理一個(gè)軟件的所有工具提示信息和工具提示信息的動(dòng)態(tài)顯示。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1所示本發(fā)明一實(shí)施例提供的基于單一接口的工具提示系統(tǒng)的原理圖;
圖2所示本發(fā)明一實(shí)施例提供的基于單一接口的工具提示方法的流程圖;
圖3所示本發(fā)明一實(shí)施例提供的步驟s3的流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例一
圖1所示本發(fā)明一實(shí)施例提供的基于單一接口的工具提示系統(tǒng)的原理圖。如圖1所示,本發(fā)明的基于單一接口的工具提示系統(tǒng)包括工具提示管理器110、控件倉(cāng)庫(kù)120、事件管理器130和顯示組件140,所述工具提示管理器110分別和所述控件倉(cāng)庫(kù)120、所述事件管理器130和所述顯示組件140連接。
需要說明的是,在本發(fā)明實(shí)施例中,系統(tǒng)編程人員在編程時(shí)需要對(duì)一個(gè)控件做工具提示時(shí),主動(dòng)調(diào)用本發(fā)明實(shí)施例提供的工具提示系統(tǒng)。
所述工具提示管理器110用于將控件和所述控件的提示信息獲取方式增加到所述控件倉(cāng)庫(kù)120,以及將所述控件和所述事件管理器130關(guān)聯(lián)。
具體地,在本發(fā)明一實(shí)施例中,當(dāng)一個(gè)控件需要做工具提示功能時(shí),調(diào)用工具提示管理器110來增加工具提示功能;工具提示管理器110把需要做工具提示的控件和該控件對(duì)應(yīng)的提示信息獲取方式(例如,靜態(tài)獲取方式或動(dòng)態(tài)獲取方式)加入控件倉(cāng)庫(kù)120;再將把該控件的管理權(quán)交由事件管理器130,使得事件管理器130可以訪問該控件及其相關(guān)信息。
所述控件倉(cāng)庫(kù)120用于存儲(chǔ)所述控件及對(duì)應(yīng)的提示信息獲取方式。
所述事件管理器130用于控制所述工具提示管理器110從所述控件倉(cāng)庫(kù)120獲取對(duì)應(yīng)的控件,以使所述工具提示管理器110根據(jù)所述控件的所述提示信息獲取方式獲取所述提示信息。
進(jìn)一步地,在本發(fā)明一實(shí)施例中,所述事件管理器130還用于確定所述提示信息的顯示時(shí)機(jī),當(dāng)需要顯示所述提示信息時(shí),發(fā)送控制信號(hào)至所述工具提示管理器110,以使所述工具提示管理器110根據(jù)所述控制信號(hào)從所述控件倉(cāng)庫(kù)120中獲取對(duì)應(yīng)的控件。
進(jìn)一步地,事件管理器130是通過鼠標(biāo)狀態(tài)來判斷顯示時(shí)機(jī)。例如,只有當(dāng)鼠標(biāo)懸浮超過預(yù)設(shè)時(shí)間時(shí),才會(huì)觸發(fā)顯示。
具體地,在本發(fā)明一實(shí)施例中,所述事件管理器130是所有控件事件處理的總接口,用于管理控件的提示信息的顯示時(shí)機(jī)。例如,所述事件管理器130通過管理鼠標(biāo)狀態(tài)(例如,鼠標(biāo)移動(dòng)、按下、抬起、懸浮、懸浮定時(shí)器等事件)來確定何時(shí)顯示控件的提示信息,例如,所述事件管理器130監(jiān)測(cè)到鼠標(biāo)懸浮事件超過預(yù)設(shè)時(shí)間(例如,500毫秒)后),所述事件管理器130發(fā)送控制信號(hào)到工具提示管理器110,使得工具提示管理器110從控件倉(cāng)庫(kù)120中獲取對(duì)應(yīng)的控件。
所述顯示組件140用于在軟件界面顯示所述提示信息。
具體地,在本發(fā)明一實(shí)施例中,在所述工具提示管理器110獲取所述提示信息后,會(huì)調(diào)用所述顯示組件140來顯示該提示信息。
進(jìn)一步地,在本發(fā)明一實(shí)施例中,該基于單一接口的工具提示系統(tǒng)還包括提示信息管理器150,用于管理所述提示信息獲取方式為靜態(tài)獲取方式的所有控件的提示信息。
具體地,在本發(fā)明一實(shí)施例中,該靜態(tài)獲取方式是指該控件的提示信息是以xml(extensiblemarkuplanguage,可擴(kuò)展標(biāo)記語(yǔ)言)文件的形式存儲(chǔ)在提示信息管理器150中。該動(dòng)態(tài)獲取方式是指通過激發(fā)控件獲取提示信息事件來動(dòng)態(tài)獲取提示信息,通常通過回調(diào)函數(shù)來實(shí)現(xiàn)。通過靜態(tài)獲取方式,可以將一些常用的提示信息內(nèi)容預(yù)設(shè)在xml文件中,方便管理;通過動(dòng)態(tài)獲取方式,可以由開發(fā)人員通過回調(diào)函數(shù)自行定義,方便個(gè)性化設(shè)置。
如上所述,所述事件管理器130在確定需要顯示提示信息后,發(fā)送控制信號(hào)至所述工具提示管理器110;由所述工具提示管理器110根據(jù)所述控制信號(hào)從所述控件倉(cāng)庫(kù)120中獲取所述控件和所述提示信息獲取方式;由所述工具提示管理器110根據(jù)所述提示信息獲取方式獲取所述提示信息,其中,如果所述提示信息獲取方式為靜態(tài)獲取方式,所述工具提示管理器110調(diào)用所述提示信息管理器150來獲取所述提示信息;如果所述提示信息獲取方式為動(dòng)態(tài)獲取方式,所述工具提示管理器110通過事件激發(fā)方式來獲取所述提示信息。
進(jìn)一步地,在本發(fā)明一實(shí)施例中,所述事件管理器130還用于在判斷所述控件不再有效時(shí),發(fā)送移除信號(hào)至所述工具提示管理器110;所述工具提示管理器110還用于根據(jù)所述移除信號(hào)將所述控件從所述控件倉(cāng)庫(kù)120移除。這樣,在不需要該控件時(shí),即可將其從控件倉(cāng)庫(kù)移除,釋放控件倉(cāng)庫(kù)的空間資源。
有利地,本實(shí)施例提供的基于單一接口的工具提示系統(tǒng),由工具提示管理器實(shí)現(xiàn)所有控件事件的統(tǒng)一管理;由控件倉(cāng)庫(kù)管理所有控件;由事件管理器管理提示信息顯示時(shí)機(jī);由顯示組件來顯示提示信息;由提示信息管理器保存靜態(tài)的提示信息或者通過事件激發(fā)方式來動(dòng)態(tài)獲取提示信息。當(dāng)一個(gè)控件需要做工具提示功能時(shí),調(diào)用工具提示管理器來增加工具提示功能;工具提示管理器把控件及提示信息獲取方式增加到控件倉(cāng)庫(kù);然后由工具提示管理器把此控件和事件管理器進(jìn)行關(guān)聯(lián);事件管理器在要顯示提示信息時(shí),調(diào)用提示信息管理器來獲取提示信息,也可以通過事件激發(fā)方式來動(dòng)態(tài)獲取提示信息;獲取提示信息后,調(diào)用顯示組件顯示提示信息。由此,實(shí)現(xiàn)了實(shí)現(xiàn)單一接口管理一個(gè)軟件的所有工具提示信息并做到工具提示信息的動(dòng)態(tài)顯示。
實(shí)施例二
圖2所示本發(fā)明一實(shí)施例提供的基于單一接口的工具提示方法的流程圖。如圖2所示,本發(fā)明的基于單一接口的工具提示方法包括:
步驟s1:將控件和所述控件的提示信息獲取方式增加到控件倉(cāng)庫(kù);
步驟s2:將所述控件和事件管理器關(guān)聯(lián);
步驟s3:從所述控件倉(cāng)庫(kù)獲取對(duì)應(yīng)的控件,并根據(jù)所述控件的所述提示信息獲取方式獲取所述提示信息;
步驟s4:調(diào)用顯示組件在軟件界面顯示所述提示信息。
具體地,在本發(fā)明一實(shí)施例中,當(dāng)一個(gè)控件需要做工具提示功能時(shí),調(diào)用工具提示管理器來增加工具提示功能;工具提示管理器把控件及提示信息獲取方式增加到控件倉(cāng)庫(kù);然后由工具提示管理器把控件和事件管理器進(jìn)行關(guān)聯(lián),即由事件管理器管理提供所有控件的事件處理;當(dāng)事件管理器監(jiān)測(cè)到控件的提示信息的顯示時(shí)機(jī)時(shí),通過工具提示管理器根據(jù)該控件的提示信息獲取方式獲取相應(yīng)的提示信息;獲取提示信息后,調(diào)用顯示模塊顯示提示信息。
進(jìn)一步地,在本發(fā)明一實(shí)施例中,所述提示信息獲取方式為靜態(tài)獲取方式或動(dòng)態(tài)獲取方式。因此,如圖3所示,步驟s3包括:
步驟s31:確定所述提示信息的顯示時(shí)機(jī),當(dāng)需要顯示所述提示信息時(shí),發(fā)送控制信號(hào)至工具提示管理器;
步驟s32:根據(jù)所述控制信號(hào)從所述控件倉(cāng)庫(kù)中獲取所述控件和所述提示信息獲取方式;
步驟s33:根據(jù)所述提示信息獲取方式獲取所述提示信息,其中,如果所述提示信息獲取方式為靜態(tài)獲取方式,調(diào)用提示信息管理器來獲取所述提示信息;如果所述提示信息獲取方式為動(dòng)態(tài)獲取方式,所述工具提示管理器通過事件激發(fā)方式來獲取所述提示信息。
具體地,在本發(fā)明一實(shí)施例中,該靜態(tài)獲取方式是指該控件的提示信息是以xml的文件的形式存儲(chǔ)在提示信息管理器中。該動(dòng)態(tài)獲取方式是指通過激發(fā)控件獲取提示信息事件來動(dòng)態(tài)獲取提示信息,通常通過回調(diào)函數(shù)來實(shí)現(xiàn)。
具體地,所述事件管理器130通過管理鼠標(biāo)狀態(tài)(例如,鼠標(biāo)移動(dòng)、按下、抬起、懸浮、懸浮定時(shí)器等事件)來確定何時(shí)顯示控件的提示信息,例如,所述事件管理器130監(jiān)測(cè)到鼠標(biāo)懸浮事件超過預(yù)設(shè)時(shí)間(例如,500毫秒)后),所述事件管理器130發(fā)送控制信號(hào)到工具提示管理器110,使得工具提示管理器110從控件倉(cāng)庫(kù)120中獲取對(duì)應(yīng)的控件。
進(jìn)一步地,在本發(fā)明一實(shí)施例中,還包括:
當(dāng)所述事件管理器判斷所述控件不再有效時(shí),發(fā)送移除信號(hào)至所述工具提示管理器;
由所述工具提示管理器根據(jù)所述移除信號(hào)將所述控件從所述控件倉(cāng)庫(kù)移除。
這樣,在不需要該控件時(shí),即可將其從控件倉(cāng)庫(kù)移除,釋放控件倉(cāng)庫(kù)的空間資源。
有利地,本實(shí)施例提供的基于單一接口的工具提示系方法,當(dāng)一個(gè)控件需要做工具提示功能時(shí),調(diào)用工具提示管理器來增加工具提示功能;工具提示管理器把控件及提示信息獲取方式增加到控件倉(cāng)庫(kù);然后由工具提示管理器把此控件和事件管理器進(jìn)行關(guān)聯(lián);事件管理器在要顯示提示信息時(shí),調(diào)用提示信息管理器來獲取提示信息,也可以通過事件激發(fā)方式來動(dòng)態(tài)獲取提示信息;獲取提示信息后,調(diào)用顯示組件顯示提示信息。由此,實(shí)現(xiàn)了實(shí)現(xiàn)單一接口管理一個(gè)軟件的所有工具提示信息并做到工具提示信息的動(dòng)態(tài)顯示。
以上所揭露的僅為本發(fā)明一種較佳實(shí)施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分流程,并依本發(fā)明權(quán)利要求所作的等同變化,仍屬于發(fā)明所涵蓋的范圍。