javafx 打开新窗口_新的JMetro JavaFX 11兼容版本
javafx 打開新窗口
你好,我們又見面了! 這次,新版本與JavaFX 11兼容。
繼續(xù)閱讀以獲取詳細信息。
JMetro 8.5.7和11.5.7版本
JMetro代碼已分為2個分支。 master分支具有Java 8兼容的JMetro版本,“ 11”分支具有Java 11兼容的版本。 以“ 11.”開頭的版本。 將適用于Java 11和以“ 8”開頭的版本。 將適用于Java 8。
“ 11”分支正在針對JavaFX11進行測試,但可能在JavaFX 9以及即將發(fā)布的JavaFX 13上都可以正常工作。
以前的JMetro版本的所有CSS都可以與JavaFX11一起使用,不同之處在于,現(xiàn)在通過CSS引用的新外觀也可以使用。
遷移的困難在于,代碼已從JavaFX8更改為JavaFX9,并且控件外觀已公開且其代碼已更改。 此外,模塊的引入及其在JavaFX9 +框架代碼中的使用,使得訪問皮膚所使用的內(nèi)部類(如“行為”類)成為不可能(在某些情況下不是不可能的,但仍然是不可取的)。
所有皮膚都已轉(zhuǎn)換。 他們是:
- 紐扣皮
在切換按鈕和常規(guī)按鈕上添加彈簧按鈕按下動畫: https : //pixelduke.com/2018/08/27/fluent-design-button-toggle-button-tooltip/
- TextField外觀和PasswordField外觀
在“文本字段”的右側(cè)添加一個按鈕,該按鈕可讓您清除文本;對于“密碼字段”,該按鈕將允許您以純文本格式查看密碼: https : //pixelduke.com/2019/01/20/jmetro-version- 5-2-released /,https://pixelduke.com/2018/09/09/fluent-design-style-text-field-and-password-field-for-java-javafx/
- ProgressBar皮膚
設(shè)置不確定的ProgressBar的外觀,使其等于Fluent Design規(guī)格不確定的ProgressBar的外觀: https : //pixelduke.com/2018/09/30/fluent-design-style-progress-bar-for-java-javafx/
- 滑塊皮膚
向滑塊添加填充。 我認為JavaFX Slider中目前存在的一些明顯遺漏。 并添加一個彈出窗口,該彈出窗口告訴用戶在拖動拇指時在滑塊上設(shè)置的確切值: https : //pixelduke.com/2018/08/19/fluent-design-slider-java-javafx /
- 撥動開關(guān)皮膚
我為ControlsFX創(chuàng)建的撥動開關(guān)控件的新Skin 。 它添加了一些功能和修復(fù): https : //pixelduke.com/2018/08/12/fluent-design-toggle-switch-java-javafx/
8.5.7和11.5.7中的新功能
對于熟悉以前的JMetro版本的開發(fā)人員,API已更改。
現(xiàn)在, JMetro類的構(gòu)造函數(shù)接受一個Scene和一個Style或一個Parent和一個Style 。
然后添加了以下屬性:
- 樣式
DARK或LIGHT樣式外觀。
- 現(xiàn)場
將應(yīng)用JMetro主題的Scene 。
- 父母
將應(yīng)用JMetro主題的Parent 。 如果設(shè)置了此屬性并且之前還設(shè)置了一個Scene ,則對JMetro實例的更改將開始應(yīng)用于新指定的Parent而不是應(yīng)用于Scene 。 如果在設(shè)置“ Parent之后設(shè)置“ Scene ,則會發(fā)生相反的情況。
- 自動彩色調(diào)色板
如果為true,則所有Panes (例如BorderPane, AnchorPane, StackPane, Pane等)將自動設(shè)置其背景顏色。 如果樣式為DARK則背景將為深色(如黑色),如果樣式為LIGHT則背景將為淺(如白色)。 這樣做的缺點是,如果您有將Panes作為中間子級的自定義控件,則通常需要將其背景重新定義為透明,否則您的自定義控件中可能會出現(xiàn)白色/黑色背景補丁。 或者,如果將此屬性設(shè)置為false(默認值),則可以將樣式類.background添加到應(yīng)該位于應(yīng)用程序背景中的Panes中。 然后,它們將根據(jù)Style屬性值自動更改其背景顏色。
- getOverridingStylesheets
實際上,這實際上是可以添加樣式表的ObservableList 。 該樣式表將添加到構(gòu)成JMetro主題定義的樣式表之后。 這意味著添加到此列表的樣式表將覆蓋JMetro主題設(shè)置的定義,以防它們的特異性相同或更高。 因此,這是重新定義和添加覆蓋JMetro的自定義樣式的好地方。
其他變化
除了上述更改。 現(xiàn)有的JMetro樣式已進行了更多修復(fù)。 所有JMetro示例均已遷移到“ 11”分支中的JavaFX11。 最終,該代碼已被清除,JavaFX2仍然存在CSS代碼之類的東西已被刪除。
結(jié)語
如所承諾的,JMetro的JavaFX9 +版本現(xiàn)在也可用。 我試圖推遲此操作,因為我仍然有Java8客戶端恰好在使用JMetro,而維護2個版本可能會很麻煩。 這樣,master分支中的Java 8版本將暫時保持不變。
該API也已被清理,我認為它現(xiàn)在變得越來越干凈。 新屬性也已添加到JMetro類,從而可以進一步自定義JMetro。
翻譯自: https://www.javacodegeeks.com/2019/08/new-jmetro-javafx-11-compatible-version.html
javafx 打開新窗口
總結(jié)
以上是生活随笔為你收集整理的javafx 打开新窗口_新的JMetro JavaFX 11兼容版本的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑怎么设置虚拟内存电脑如何把虚拟内存
- 下一篇: 手机、平板远控电脑的黄金搭档,向日葵智能