現在的版本提供了uniTreeMenu,可以制作流行的菜單樹,如下圖:
功能方面還需要進一步增強,我遇到進一步定制字體、字號、及行高的問題,解決方法如下:
/*設置TreeMenu字體*/ .x-treelist-nav .x-treelist-item-text { font-family:"微軟雅黑"; font-size: 14px; } /*設置TreeMenu行高*/ .x-treelist-nav .x-treelist-item-text { line-height: 40px; } .x-treelist-nav .x-treelist-item-icon:before, .x-treelist-nav .x-treelist-item-tool:before, .x-treelist-nav .x-treelist-item-expander { line-height: 40px; }
在uniServerModule的CustomCSS中加入上面的代碼。
這個方法在uniGUI 1.9.1534中正常,但是這樣定義,是定義全局的,也就是說,所有的TreeMenu或者用css中定義的屬性內容的其他控件也會受到影響。
如果只想為指定的TreeMenu控件用上面的內容呢?現在,我們改變一下定義,加上自己的前綴:
/*設置TreeMenu字體*/ .kls-treemenu .x-treelist-nav .x-treelist-item-text { font-family:"微軟雅黑"; font-size: 14px; } /*設置TreeMenu行高*/ .kls-treemenu .x-treelist-nav .x-treelist-item-text { line-height: 40px; } .kls-treemenu .x-treelist-nav .x-treelist-item-icon:before, .x-treelist-nav .x-treelist-item-tool:before, .x-treelist-nav .x-treelist-item-expander { line-height: 40px; }
看上面的代碼,我加了.kls-treemenu,現在,我們為主窗口的TreeMenu指定使用這里具體定義的css:
uniTreeMenu1.LayoutConfig.ComponentCls:='kls-treemenu',注意,這里沒有“.”,即這里沒有點。我就犯了錯誤,還跑問朋友太叔,怎么回事?
期待官方的改進,不用這樣來定義TreeMenu的外觀。
參考:https://www.cnblogs.com/tulater/archive/2020/04/14/12698860.html#a20
當菜單項目多時,沒有滾動條,用下面的方法:
/*設置TreeMenu字體*/ .kls-treemenu .x-treelist-nav .x-treelist-item-text { font-family:"微軟雅黑"; font-size: 14px; /*顯示滾動條*/ overflow-y:auto }
朋友說用代碼也可以實現:
在火車上發來的截圖,我還沒有試,不過,他說這樣,還可以變成控件的屬性。是個好方法,先記錄到這里了。
默認情況下,點擊一級菜單的文字,是不顯示二級菜單的,只能點擊右邊向下的箭頭。用戶提出這樣不好,那怎么一點一級就顯示二級呢?朋友告訴我,這個屬性可以控制:
一試,果真好用,感謝朋友支持!