亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

菜單實現方法、菜單實現裝置及顯示裝置的制作方法

文檔序號:6438748閱讀:128來源:國知局
專利名稱:菜單實現方法、菜單實現裝置及顯示裝置的制作方法
技術領域
本發(fā)明涉及一種菜單顯示方法、菜單顯示實現方法及菜單顯示裝置。
背景技術
目前的電子裝置中大量使用操作菜單,因此操作菜單的便捷性成為影響用戶體驗的重要因素。現有技術的操作菜單如附圖1所示,多個主菜單項排成一行,當鼠標選中某個菜單項時,可以彈出下拉子菜單及相應子菜單項。但是,這種菜單顯示方式展現效果一般,比較呆板,效果單一,用戶體驗較差。

發(fā)明內容
本發(fā)明提出一種新型的菜單實現方法和裝置以及顯示裝置,以解決上述顯示方式呆板、用戶體驗差的技術問題。本發(fā)明提供一種菜單實現方法,包括以下步驟創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架;在所述菜單控件模板中設置菜單顯示策略;根據所述菜單控件模板生成菜單控件;其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。本發(fā)明還提供一種菜單實現裝置,包括菜單控件模板創(chuàng)建部件,用于創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架;菜單顯示策略設置部件,用于在所述菜單控件模板中設置菜單顯示策略;菜單控件生成部件,用于根據所述菜單控件模板生成菜單控件; 其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。本發(fā)明還提供一種應用上述菜單實現方法的顯示裝置。采用本發(fā)明的技術方案,不但可以使得菜單的顯示生動活潑,而且使得子菜單的顯示保持一致,不會時大時小,而且,通過采用獨立窗體,菜單的刷新不會影響背景的刷新, 從而可以添加其他的特效,例如陰影效果、菜單淡入淡出效果等。


圖1是現有技術的菜單示意圖;圖2是本發(fā)明菜單實現方法的示意圖;圖3是本發(fā)明所顯示的菜單在鼠標未進入時的示意圖;圖4是本發(fā)明所顯示的菜單在鼠標進入時的示意圖;圖5是本發(fā)明所顯示的菜單在鼠標移動時的示意圖;圖6是本發(fā)明所顯示的菜單在子菜單彈出時的示意圖;圖7是本發(fā)明菜單實現裝置的結構示意圖。
具體實施例方式為了使得軟件菜單的顯示生動活潑,本發(fā)明采用一種魚眼效果的方式來顯示菜單。所謂魚眼效果是指,隨著鼠標在一行或一列菜單項上移動,菜單項會隨著鼠標的位置調整高度和寬度,其中,鼠標所在位置的那個菜單項的高度和寬度最大。本發(fā)明的菜單顯示方法包括顯示包括一行或一列菜單項的菜單;其中,當選定任一菜單項時,該菜單項被放大。本發(fā)明的菜單實現方法使用模板定制技術,首先使用菜單控件模板定制出其基本控件框架;然后定制菜單項容器模板,在容器模板中添加魚眼效果,使得魚眼效果能夠作用于菜單的每一項,并且將其子菜單單獨定制,以避免魚眼效果也作用于子菜單,使得菜單整體顯得不夠正規(guī);最后將控件放入單一窗體中,使其刷新方式不影響背景的刷新,而且能夠兼顧陰影、淡入淡出等效果,其流程如圖2所示,在步驟S201中,創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架;接下來,在步驟S202中,在所述菜單控件模板中設置菜單顯示策略;隨后,在步驟S203中,根據所述菜單控件模板生成菜單控件;其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度,具體說明如下。首先,如步驟S201所示,創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架。首先,采用微軟WPF中的菜單控件,對其展現層進行模板級定制,包括對其布局、 背景、菜單項展現方式進行定義。關于布局,可根據需要采用橫向布局或縱向布局的方式來對菜單項的排列進行設計。關于背景,一般采用透明背景的方式,以使魚眼效果更加突出。 根據需要,也可以采用帶有顏色的背景。接下來,如步驟S202所示,在所述菜單控件模板中設置菜單顯示策略。關于菜單項展現方式,可以基于WPF(Windows Presentation Foundation)模板定制方式,按照美工的設計對菜單項進行設定,設定內容包括菜單項背景色調、漸變方式、展現形式(直角矩形還是圓角矩形、方形還是圓形)、投影效果及其切換效果等。首先繼承一個WPF中的MackPanel類,作為菜單項的容器模板,其次在其MeasureOverride函數中初始化每個菜單項的位置、寬度和高度,隨后初始化鼠標動作MouseMove、MouseEnter和MouseLeave。在鼠標置于菜單項容器之上時,通過調用hvalidateArrange函數來對容器中的元素重新進行排列來使得菜單項動作。 InvalidateArrange函數的主要功能是觸發(fā)重載的ArrangeOverride函數,當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。在鼠標進入菜單控件時,先獲取其相鄰的菜單項,之后對按照鼠標所在的菜單項的位置的X值及預先設置好的放大比例進行計算得到一個權值,作為放大的比例(預設的比例值可調整),放大比例以控件寬度的中值為界,中值位置左邊,隨鼠標的進入逐步放大, 當鼠標位置越過中值后,菜單項控件逐步縮小。然后根據容器控件的整體寬度,計算出與鼠標所在控件左側菜單項和右側菜單項的縮放比例,之后計算出其他菜單項的縮放比例。為體現出魚眼效果,除鼠標所在菜單項比例直接設定外,其左右側的菜單項控件均比鼠標所在菜單項縮放比例小一個閾值(通常為X值和其菜單項寬度之比,具體計算方式請參見下文中的公式),但比其他菜單項大。其他的不參與放大的菜單項,其寬高程度按比例縮小,以
5使得菜單的整體寬度不變。魚眼效果的縮放比例的公式為預設比例Mag,初值為預設值;放大權值Ratio,初值為0 ;菜單項數量=Coimt ; 鼠標相對菜單項位置X,y ;控件寬度=ControlWidth ;比例增大值Extra,初值為O。放大權值Ratio = x/Controlffidth控件比例增大值Extra+ = (Mag-I)鼠標所在控件縮放比例Scale = (Mag X Count)/(Count+Extra)鼠標左側控件縮放比例ScaleL = Count X (1+((Mag-I)X (I-Ratio)))/(Count+Extra)鼠標右側控件縮放比例ScaleR = Count X (1+((Mag-I)X Ratio))/(Count+Extra)不參與魚眼效果控件的縮放比例ScaleO = Count/(Count+Extra)在調整完菜單項比例之后,調整不同的菜單項的比例。之后,將比例值封裝到一個比例變換矩陣(仿射變換矩陣)中,矩陣為一個3X3矩陣,將其(1,1)和(2,2)元素置為縮放比例,其他值不變,以此達到縮放菜單項的目的。最后執(zhí)行動畫,實現魚眼顯示效果。圖3 至5為使用了魚眼效果的顯示菜單,其中,圖3為鼠標未進入菜單項控件的效果,圖4為鼠標進入菜單項控件的效果,圖5為鼠標在菜單項控件之間移動的效果。由于菜單項控件是一個復合控件,其包含自身的子控件,即菜單項控件自身內部還可以包含其他的菜單項控件。而且,菜單項的構造中含有能夠下拉的子菜單容器。由于魚眼效果調整每個菜單項控件的縮放比例,這樣就使得魚眼效果對菜單項控件進行縮放的同時,也對每個菜單項所帶的子菜單項進行了縮放,由此所帶來的問題是,鼠標點擊時,其所在菜單項的位置不確定,顯示比例也就不確定,如果不加控制,會出現子菜單彈出時,縮放效果也發(fā)生作用,這樣子菜單的顯示效果會根據當時鼠標所處位置的顯示比例進行縮放。 由于不同鼠標所處不同位置的顯示比例不確定,會出現子菜單列表時大時小的問題。為了解決此問題,將所述菜單控件模板的子菜單與一個單獨的彈出式菜單關聯, 并修改所述菜單控件的點擊響應事件為顯示彈出式菜單。根據每個菜單項,首先單獨定制出其子菜單項為一個Popup菜單(彈出菜單)控件,而不是將其子菜單項放入上一級菜單項中。這就是說,在定制容器模板時,將其子菜單單獨定制,而不是將子菜單和其菜單項綁定,這樣,就可以單獨控制子菜單的消息響應,而不與其所對應的菜單項一起進行動作控制。然后分別定制子菜單和其所對應的菜單項的鼠標動作。在鼠標點擊菜單項時,觸發(fā)一個鼠標點擊動作,此動作首先檢查鼠標所處位置,然后判斷出需要顯示的子菜單,并且判斷是否有其他子菜單正在顯示,有已經顯示的其他子菜單時,將其關閉,然后激活菜單項所對應的子菜單,展現定制的彈出子菜單。在子菜單初始化時,可以為其PopupAnimation 屬性進行賦值,從而為子菜單彈出過程添加動畫。這樣由于菜單項中不含有子菜單,從而不
6會觸發(fā)菜單項中的子菜單。如圖6所示,在子菜單彈出后,可以將鼠標焦點放到子菜單上,這樣會取消菜單項的魚眼效果,使得菜單在整體效果上顯得比較規(guī)整。通過以上方式的處理,子菜單就不會出現時大時小的情況,而且在菜單的整體效果上顯得比較端莊、典雅。隨后,如步驟S203所示,根據所述菜單控件模板生成菜單控件。最后將此控件放入一個獨立的窗體中,以免影響軟件背景的刷新,尤其是在控件背景和軟件背景不一致的情況下,可以避免軟件背景刷新和控件背景刷新相互干擾的情況。圖7示出了本發(fā)明一實施例的菜單實現裝置的示意圖。如圖7所示,該菜單實現裝置包括菜單控件模板創(chuàng)建部件701、菜單顯示策略設置部件702及菜單控件生成部件703, 其中,菜單控件模板創(chuàng)建部件701用于創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架,菜單顯示策略設置部件702用于在所述菜單控件模板中設置所述菜單顯示策略;菜單控件生成部件703用于根據所述菜單控件模板生成菜單控件。另外,本發(fā)明的菜單實現裝置還包括關聯部件及菜單控件放置部件,所述關聯部件用于將所述菜單控件模板的子菜單與一個單獨的彈出式菜單關聯,并修改所述菜單控件的點擊響應事件為顯示彈出式菜單,所述菜單控件放置部件用于在所述菜單控件生成部件根據所述菜單控件模板生成所述菜單控件之后,將所述菜單控件放入一個單獨的窗體中, 以適應不同的背景界面的刷新模式。本發(fā)明的菜單顯示方法及裝置不限于windows操作系統(tǒng),也可應用于Android UKDirect UI以及QT解決方案中的UI技術,并且能夠在單一窗體或平板計算機上呈現具有魚眼效果的菜單。本發(fā)明的菜單顯示效果也不限于魚眼效果,還可采用本發(fā)明的方法將其他利于用戶操作的顯示效果應用于菜單顯示中。本發(fā)明將魚眼效果結合到菜單技術上,在保留其原有基本展現形式的條件下,當鼠標在菜單上時,使得菜單能夠隨著鼠標的移動改變其大小和位置,解決了桌面軟件菜單過于呆板,用戶體驗較差的問題,增加了菜單的表現效果,提高了菜單的絢麗程度,增強了軟件的用戶體驗。本發(fā)明采用獨立窗體使得菜單的刷新不影響背景的刷新,以使其能夠添加其他的特效,例如陰影效果,菜單淡入淡出效果等。本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于計算機可讀取存儲介質中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁盤、光盤、只讀存儲器或隨機存儲存儲器等。以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應以權利要求的保護范圍為準。
權利要求
1.一種菜單實現方法,其特征在于,包括以下步驟 創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架; 在所述菜單控件模板中設置菜單顯示策略;根據所述菜單控件模板生成菜單控件;其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。
2.根據權利要求1所述的菜單實現方法,其特征在于,還包括將所述菜單控件模板的子菜單與一個單獨的彈出式菜單關聯,并修改所述菜單控件的點擊響應事件為顯示彈出式菜單。
3.根據權利要求2所述的菜單實現方法,其特征在于,所述菜單顯示策略進一步包括 根據鼠標所在菜單項的位置,按預設的縮放比例放大顯示鼠標所在位置的焦點菜單項;以所述焦點菜單項的中點為中心,根據鼠標的位置和移動方向調整左右相鄰的兩個菜單項的放大比例,并按照調整后的放大比例顯示與所述焦點菜單項左右相鄰的兩個菜單項;根據所述菜單控件的長度、所述焦點菜單項的尺寸、以及與所述焦點菜單項左右相鄰的兩個菜單項的尺寸按比例縮小其他菜單項,使所述菜單控件的長度不變。
4.根據權利要求2所述的菜單實現方法,其特征在于,基于微軟的Windows Presentation Foundation模板生成所述菜單控件。
5.根據權利要求4所述的菜單實現方法,其特征在于,在根據所述菜單控件模板生成所述菜單控件之后,將所述菜單控件放入一個單獨的窗體中,以適應不同的背景界面的刷新模式。
6.一種菜單實現裝置,其特征在于,包括菜單控件模板創(chuàng)建部件,用于創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架;菜單顯示策略設置部件,用于在所述菜單控件模板中設置菜單顯示策略; 菜單控件生成部件,用于根據所述菜單控件模板生成菜單控件; 其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。
7.根據權利要求6所述的菜單實現裝置,其特征在于,還包括關聯部件,用于將所述菜單控件模板的子菜單與一個單獨的彈出式菜單關聯,并修改所述菜單控件的點擊響應事件為顯示彈出式菜單。
8.根據權利要求7所述的菜單實現裝置,其特征在于,所述菜單顯示策略進一步包括 根據鼠標所在菜單項的位置,按預設的縮放比例放大顯示鼠標所在位置的焦點菜單項;以所述焦點菜單項的中點為中心,根據鼠標的位置和移動方向調整左右相鄰的兩個菜單項的放大比例,并按照調整后的放大比例顯示與所述焦點菜單項左右相鄰的兩個菜單項;根據所述菜單控件的長度、所述焦點菜單項的尺寸、以及與所述焦點菜單項左右相鄰的兩個菜單項的尺寸按比例縮小其他菜單項,使所述菜單控件的長度不變。
9.根據權利要求7所述的菜單實現裝置,其特征在于,基于微軟的Windows Presentation Foundation模板生成所述菜單控件。
10.根據權利要求9所述的菜單實現裝置,其特征在于,還包括菜單控件放置部件,用于在所述菜單控件生成部件根據所述菜單控件模板生成所述菜單控件之后,將所述菜單控件放入一個單獨的窗體中,以適應不同的背景界面的刷新模式。
11.一種應用權利要求1-5中任一項所述的菜單實現方法的顯示裝置。
全文摘要
一種菜單實現方法、菜單實現裝置及顯示裝置,所述菜單實現方法包括以下步驟創(chuàng)建菜單控件模板,確定所述菜單控件模板的顯示框架;在所述菜單控件模板中設置菜單顯示策略;根據所述菜單控件模板生成菜單控件;其中,所述菜單顯示策略為當鼠標進入菜單項區(qū)域、在菜單項區(qū)域移動和移出菜單項區(qū)域時,實時調整每個菜單項的位置、寬度和高度。本發(fā)明將魚眼效果結合到菜單技術上,在保留其原有基本展現形式的條件下,當鼠標在菜單上時,使得菜單能夠隨著鼠標的移動改變其大小和位置,解決了桌面軟件中菜單過于呆板,用戶體驗較差的問題,增加了菜單的表現效果,提高了菜單的絢麗程度,增強了軟件的用戶體驗。
文檔編號G06F9/44GK102402435SQ20111036696
公開日2012年4月4日 申請日期2011年11月17日 優(yōu)先權日2011年10月25日
發(fā)明者凌辰, 楊良策, 鄒軍 申請人:漢王科技股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1