javafx 8u40_JavaFX 8u20天的未来过去(始终在最前面)
javafx 8u40
自從我發布有關JavaFX的主題以來已經有很長時間了。 因此,如果您仍在追隨,那就太棒了!
介紹
在這篇博客文章中,我想寫一篇關于從JavaFX 8 update 20開始的非常酷的功能的博客,該功能使您的應用程序始終位于其他應用程序之上。 這意味著在您的桌面上,基于JavaFX的應用程序可以是一個浮動小部件,將保留在所有其他應用程序上方(z順序)。 例如,右上角的天氣小部件將不會被其他應用程序所遮蓋。 因此,我很高興與您分享這個驚人的功能“ Always On Top”。
歷史
過去,Java Swing開發人員將依賴于Window.setAlwaysOnTop(boolean)方法。 這項功能使Swing開發人員可以構建具有本機外觀和本機性能的桌面應用程序。 從JavaFX 1.x開始,就一直強烈要求此功能(最初由Stephen Chin @steveonjava要求WidgetFX框架)。 此功能請求是JIRA票證RT-153 。 圖1是功能請求,狀態為“已解決”。
圖1:吉拉票RT-153
盡管JavaFX 1.x,2.x和Java 8u20之前的版本沒有使用此功能,但現在終于可以使用了。 對于那些不知道如何報告錯誤或提出新功能的人,我建議您轉到JavaFX JIRA系統。
示例:天氣小部件
假設您了解自2.0版以來的JavaFX基礎知識,那么典型的應用程序將包括從javafx.application.Application類擴展。 在開發JavaFX桌面應用程序時,平臺API會為您提供一個(javafx.stage.Stage)窗口。 Stage對象將具有以下方法來訪問Always on top屬性。
- alwaysOnTopProperty()
- setAlwaysOnTop(boolean)
- isAlwaysOnTop()
以下代碼段使用setAlwaysOnTop(boolean)方法將舞臺設置為始終位于最上面。
public class KeyholeDemo extends Application {@Override?public void start(Stage primaryStage) {primaryStage.initStyle(StageStyle.TRANSPARENT);primaryStage.setAlwaysOnTop(true);// code omitted...}public static void main(String[] args) {launch(args);} }這個怎么運作
如清單清單中所示, start()方法將舞臺設置為透明,成為沒有標題欄的JavaFX窗口。 這允許應用程序在桌面上具有不規則形狀的窗口。 如果網絡人員再次向您兜售JavaFX,請向他們詢問以下問題:“ HTML5可以在桌面上創建不規則形狀的窗口嗎? (總在最前面)”。 接下來,通過setAlwaysOnTop()方法將舞臺設置為始終位于最上面。
演示版
意識到這個功能非常搶手之后,我基本上在Github上更新了舊的“ KeyholeWidget ”項目,并創建了一個視頻,演示了桌面上的小部件。 這是視頻:
要查看完整的代碼清單,請訪問Github項目“ KeyholeWidget ”。
我希望您喜歡這個很酷的功能(我知道我曾經做過)。 和往常一樣,請在下面留下評論。
編碼愉快!
翻譯自: https://www.javacodegeeks.com/2014/05/javafx-8u20-days-of-future-past-always-on-top.html
javafx 8u40
總結
以上是生活随笔為你收集整理的javafx 8u40_JavaFX 8u20天的未来过去(始终在最前面)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 入侵检测包括(入侵检测包括ddos)
- 下一篇: (安卓电视tv)