日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SWT外观:自定义FlatScrollBar颜色等

發布時間:2023/12/3 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SWT外观:自定义FlatScrollBar颜色等 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近,我引入了一個自定義滑塊控件 ,該控件可用于改善SWT外觀和更細微的視圖布局的感覺。 令人高興的是,該小部件似乎已經在Code Affine世界之外找到了較早的采用者 。 這導致了一些增強 ,這些增強將在以下各節中介紹。

SWT滾動條外觀

SWT是本機OS小部件之上的薄抽象層。 如果您打算將應用程序與OS外觀很好地集成在一起,那么這是一件非常好的事情。 但是,作為一種折衷,這種方法大大限制了樣式設計功能”(引自Sacrilege,…… )

特別是,我認為本地SWT滾動條經常具有破壞性。 但是,作為本地控件的一部分,它們的SWT外觀和感覺根本無法自定義 。 因此,我創建了一個名為FlatScrollBar的自定義SWT滑塊小部件。

由于替換樹或表之類的控件的本機SWT滾動條也是不可行的,因此我引入了ScrollableAdapter ,它可以解決帶有覆蓋層的限制。 到目前為止,我正在開發用于樹和表的適配器,以及用于ScrolledComposite的原型。

顏色...

當涉及到樣式時,顏色非常重要。 因此,毫不奇怪,第一個增強要求是關于更改各種滑塊元素的顏色的能力。 正因為如此,我介紹了三個屬性incrementColor,pageIncrementColor和thumbColor允許apropriate調整:

以下代碼段…

FlatScrollBarTable table = [...] table.setPageIncrementColor( getColor( SWT.COLOR_INFO_BACKGROUND ) ); table.setThumbColor( getColor( SWT.COLOR_WIDGET_LIGHT_SHADOW ) );

…像這樣渲染滾動條( getColor從當前顯示中檢索系統顏色):

由于Mac OS上的本機滾動條看起來是開箱即用的,因此適配器會從該平臺上的自定義疊加層中刪除。 僅Gtk和MS Windows平臺會受到影響。 但是FlatScrollBar控件本身也可以在OS X上很好地工作。

…和更多

細心的讀者可能會奇怪,由于圖片僅顯示了三個滑塊元素,所以增量顏色有什么用。 可以使用crementButtonLength顯示增量按鈕:

FlatScrollBarTable table = [...] table.setIncrementButtonLength( 7 ); table.setIncrementColor( getColor( SWT.COLOR_WIDGET_DARK_SHADOW ) ); [...]

整潔,不是嗎?

最后一個增強功能與樣式無關,但是值得注意。 它將無類型的事件處理添加到FlatScrollBar 。 因此,如果您恰巧使用Java 8,則可以按如下所示處理滾動條選擇觀察:

FlatScrollBar scrollBar = new FlatScrollBar( parent, SWT.HORIZONTAL ); scrollbar.addListener( SWT.Selection, event -> handleEvent() );

結論

到目前為止,在我們的項目之一中使用FlatScrollBar和ScrollableAdapter看起來很有希望。 我很好奇這種方法的可持續性,以及是否有可能也適應文本和/或樣式化的文本控件。 這些控件是Xiliary P2存儲庫的com.codeaffine.eclipse.swt功能的一部分: http ://fappel.github.io/xiliary

如果您想看一下代碼或提出問題,也可以看一下Xiliary GitHub項目。 查找FlatScrollbarDemo , FlatScrollBarTreeDemo和FlatScrollBarTableDemo以獲取用法示例: https : //github.com/fappel/xiliary

翻譯自: https://www.javacodegeeks.com/2015/02/swt-look-and-feel-customize-flatscrollbar-color-and-more.html

總結

以上是生活随笔為你收集整理的SWT外观:自定义FlatScrollBar颜色等的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。