專利名稱:一種翻頁(yè)控件界面外觀的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算機(jī)應(yīng)用技術(shù),具體說(shuō)是提供了一種在WEB頁(yè)面中組織翻頁(yè)操作的界面及方法,并打包成一個(gè)控件。
背景技術(shù):
當(dāng)前各行各業(yè)的信息化程度越來(lái)越高,各類信息化項(xiàng)目也是越來(lái)越多,從客觀上要求我們的系統(tǒng)具有良好的可用性和可維護(hù)性,而復(fù)用就是一種好的提高可用性和可維護(hù)性的手段。
在各種信息化系統(tǒng)中,有很多單據(jù)的數(shù)據(jù)量都比較大,如果每次都把所有數(shù)據(jù)顯示出來(lái),一是沒(méi)有必要,二是會(huì)嚴(yán)重影響性能,這時(shí)就需要把所有的數(shù)據(jù)分成若干頁(yè),每次只顯示其中一頁(yè)的數(shù)據(jù)。在現(xiàn)實(shí)中,當(dāng)開(kāi)發(fā)各類單據(jù)、查詢等功能時(shí),翻頁(yè)操作是不可避免的。往往不同的開(kāi)發(fā)人員為不同的功能實(shí)現(xiàn)了不同的翻頁(yè)操作,造成用戶使用時(shí)的迷惑。還由于這些翻頁(yè)功能的實(shí)現(xiàn)采用了硬編碼的方式實(shí)現(xiàn),造成了大量重復(fù)的代碼,給系統(tǒng)的維護(hù)增加了很多復(fù)雜度。那么如何為用戶提供統(tǒng)一的翻頁(yè)操作,如何讓開(kāi)發(fā)者能夠快速的實(shí)現(xiàn)翻頁(yè)操作?如果能把所有翻頁(yè)操作進(jìn)行抽象,并把展現(xiàn)層進(jìn)行整體封裝,制作一個(gè)高內(nèi)聚、低耦合的控件,然后在所有系統(tǒng)開(kāi)發(fā)中推廣,那么最終用戶就可以感受統(tǒng)一的翻頁(yè)操作,開(kāi)發(fā)用戶也可以通過(guò)簡(jiǎn)單的編碼實(shí)現(xiàn)全部的翻頁(yè)操作功能。
發(fā)明內(nèi)容
本發(fā)明提供了一種在WEB頁(yè)面中組織翻頁(yè)操作的界面及方法,并打包成一個(gè)控件。
本發(fā)明的目的是按以下方式實(shí)現(xiàn)的, 1.界面元素按圖1方式進(jìn)行組織,自左至右依次是首頁(yè)按鈕、下頁(yè)按鈕、上頁(yè)按鈕、末頁(yè)按鈕、數(shù)據(jù)總條數(shù)信息、當(dāng)前頁(yè)碼框(含跳轉(zhuǎn)頁(yè)碼錄入)、總頁(yè)數(shù)信息和跳轉(zhuǎn)按鈕。翻頁(yè)操作按鈕可用時(shí)的背景為灰色,不可用時(shí)背景為藍(lán)色漸變色。
2.在控件內(nèi)部自動(dòng)維護(hù)各翻頁(yè)按鈕的狀態(tài)以及提示信息內(nèi)容,對(duì)外提供一組用于操作控件的接口。
3.對(duì)外提供一組用于操作控件的接口,該接口包含每頁(yè)行數(shù)屬性的讀寫操作,總行數(shù)的讀操作,總頁(yè)數(shù)的讀操作,當(dāng)前頁(yè)索引的讀操作,翻頁(yè)事件的實(shí)現(xiàn)語(yǔ)義定義,用代碼可以描述為 public interface IPageContrls{int PageSize{get;set;}int ItemCount{get;}int PageCount{get;}int PageIndex{get;}void PageFlip(int nPageIndex,int nPageSize,out intnItemCount);event PageFlip OnPageFlip; } 開(kāi)發(fā)者通過(guò)PageSize屬性設(shè)置每頁(yè)顯示的行數(shù),然后按OnPageFlip定義的語(yǔ)義,實(shí)現(xiàn)一個(gè)自定義的取數(shù)函數(shù)即可。
4.在控件內(nèi)部自動(dòng)維護(hù)各翻頁(yè)按鈕的狀態(tài)以及提示信息內(nèi)容,根據(jù)3中的每頁(yè)行數(shù)、總行數(shù)屬性,通過(guò)一定的算法實(shí)現(xiàn)翻頁(yè)按鈕狀態(tài)的判斷,用代碼描述為 void SetButtonState() { if(ItemCount>0){ if(PageIndex <=1){ _btnFirst.Enabled =false; _btnPre.Enabled=false; _btnNext.Enabled =true; _btnLast.Enabled =true; } if(Page Index>=PageCount){ _btnNext.Enabled =false; _btnLast.Enabled =false; _btnFirst.Enabled =true; _btnPre.Enabled=true; } } else{ btnFirst.Enabled =false; _btnPre.Enabled =false;_btnNext.Enabled=false;_btnLast.Enabled =false; } }
圖1是無(wú)數(shù)據(jù)時(shí)界面元素結(jié)構(gòu)圖; 圖2是有數(shù)據(jù)時(shí)界面元素結(jié)構(gòu)圖。
具體實(shí)施例方式 本發(fā)明提供了一種在WEB頁(yè)面中組織翻頁(yè)操作的界面及設(shè)計(jì)方法,并打包成一個(gè)控件。
為使本發(fā)明的優(yōu)點(diǎn)、目的更容易理解、易懂,下面具體的實(shí)施方式做一個(gè)詳細(xì)說(shuō)明。
1.開(kāi)發(fā)者在Visual Studio的Toolbox窗口中,加載本控件的動(dòng)態(tài)鏈接庫(kù),然后把本控件拖放到自己的WEB頁(yè)面。
2.開(kāi)發(fā)者通過(guò)Visual Studio的屬性窗口或直接在代碼中設(shè)置PageSize和BeforFlipPage屬性,如果翻頁(yè)前不需要執(zhí)行腳本函數(shù),可以不用設(shè)置BeforFlipPage屬性。最后針對(duì)委托OnPageFlip(int nPageIndex,intnPageSize,out int nItemCount)寫一個(gè)自定義函數(shù),實(shí)現(xiàn)取數(shù)功能。
3.運(yùn)行時(shí)的樣式如圖1和2所示。
該系統(tǒng)具有高內(nèi)聚、低耦合的特點(diǎn),使用簡(jiǎn)單、可維護(hù)性高,為實(shí)現(xiàn)統(tǒng)一、快速的翻頁(yè)操作提供了一個(gè)高效、快速的解決方案。
目前本發(fā)明大量應(yīng)用在各類信息化系統(tǒng)和項(xiàng)目中,不僅能讓用戶分享統(tǒng)一的翻頁(yè)經(jīng)驗(yàn),而且還可以提高開(kāi)發(fā)者的開(kāi)發(fā)效率,降低工作量,具有很高的推廣和經(jīng)濟(jì)價(jià)值。
權(quán)利要求
1.一種翻頁(yè)控件界面外觀的實(shí)現(xiàn)方法,其特征在于,界面元素自左至右依次排列,分別是首頁(yè)按鈕、下頁(yè)按鈕、上頁(yè)按鈕、末頁(yè)按鈕、數(shù)據(jù)總條數(shù)信息、當(dāng)前頁(yè)碼,包括跳轉(zhuǎn)頁(yè)碼錄入框、總頁(yè)數(shù)信息、跳轉(zhuǎn)按鈕,翻頁(yè)操作按鈕可用時(shí)的背景為灰色,不可用時(shí)背景為藍(lán)色漸變色,在控件內(nèi)部自動(dòng)維護(hù)各翻頁(yè)按鈕的狀態(tài)以及提示信息內(nèi)容,對(duì)外提供一組用于操作控件的接口,該接口包含每頁(yè)行數(shù)屬性的讀寫操作,總行數(shù)的讀操作,總頁(yè)數(shù)的讀操作,當(dāng)前頁(yè)索引的讀操作,翻頁(yè)事件的實(shí)現(xiàn)語(yǔ)義定義,用代碼描述為
public interface IPageContrls
{
int PageSize{get;set;}
int ItemCount{get;}
int PageCount{get;}
int PageIndex{get;}
void PageFlip(int nPageIndex,int nPageSize,out int
nItemCount);
event PageFlip OnPageFlip;
}。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,每頁(yè)行數(shù)、總行數(shù)屬性,
通過(guò)算法實(shí)現(xiàn)翻頁(yè)按鈕狀態(tài)的判斷,用代碼描述為
void SetButtonState()
{
if (ItemCount>0){
if(PageIndex<=1){
_btnFirst.Enabled=false;
_btnPre.Enabled=false;
_btnNext.Enabled=true;
_btnLast.Enabled=true;
}
if(Page Index>=PageCount){
btnNext.Enabled=false;
_btnLast.Enabled=false;
_btnFirst.Enabled=true;
_btnPre.Enabled=true;
}
}
else {
_btnFirst.Enabled=false;
_btnPre.Enabled=false;
_btnNext.Enabled=false;
_btnLast.Enabled=false;
}
}
。
全文摘要
本發(fā)明提供了一種翻頁(yè)控件界面外觀的實(shí)現(xiàn)方法,該方法是界面元素自左至右依次排列,分別是首頁(yè)按鈕、下頁(yè)按鈕、上頁(yè)按鈕、末頁(yè)按鈕、數(shù)據(jù)總條數(shù)信息、當(dāng)前頁(yè)碼,包括跳轉(zhuǎn)頁(yè)碼錄入框、總頁(yè)數(shù)信息、跳轉(zhuǎn)按鈕,翻頁(yè)操作按鈕可用時(shí)的背景為灰色,不可用時(shí)背景為藍(lán)色漸變色,在控件內(nèi)部自動(dòng)維護(hù)各翻頁(yè)按鈕的狀態(tài)以及提示信息內(nèi)容,對(duì)外提供一組用于操作控件的接口,該接口包含每頁(yè)行數(shù)屬性的讀寫操作,總行數(shù)的讀操作,總頁(yè)數(shù)的讀操作,當(dāng)前頁(yè)索引的讀操作,翻頁(yè)事件的實(shí)現(xiàn)語(yǔ)義定義,本發(fā)明大量應(yīng)用在各類信息化軟件中,開(kāi)發(fā)人員根據(jù)本方法可以快速、高效的實(shí)現(xiàn)翻頁(yè)功能。由于具有適用面廣,使用簡(jiǎn)單,界面風(fēng)格統(tǒng)一的特點(diǎn),具有很好的推廣使用價(jià)值。
文檔編號(hào)G06F9/44GK101702124SQ20091023099
公開(kāi)日2010年5月5日 申請(qǐng)日期2009年11月27日 優(yōu)先權(quán)日2009年11月27日
發(fā)明者王濤威, 高樂(lè)光 申請(qǐng)人:浪潮集團(tuán)山東通用軟件有限公司