OSレベルのウィンドウではないカスタムダイアログをJavaFXで作成できますか? (これは、アプリケーションウィンドウを出ることができない、メインステージの他のすべての上に表示されるポップアップウィンドウです。)すなわち、Adobe/Apache Flexのスタイルダイアログ。JavaFXでのメインウィンドウ/ステージ内のカスタムダイアログ/ポップアップ
0
A
答えて
1
その実際には非常に簡単で、サードパーティのライブラリを使用する必要なし:
stackpane内とトップの上にルートコンテナがアンカーペイン、ダイアログボックスコントロール(コンテナ/コンテナ+コントロールを作成置く埋め込み)。私はここで何を意味するかを実証するために
は小さなFXMLファイルです:あなたは、それは性質、リスナーに可動することができます
:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>
<StackPane xmlns="http://javafx.com/javafx/8.0.40" xmlns:fx="http://javafx.com/fxml/1">
<children>
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: black;" />
<AnchorPane prefHeight="200.0" prefWidth="363.0">
<children>
<BorderPane layoutX="84.0" layoutY="123.0" prefHeight="99.0" prefWidth="227.0" style="-fx-background-color: red;">
<center>
<Button mnemonicParsing="false" text="Button" BorderPane.alignment="CENTER" />
</center>
</BorderPane>
</children>
</AnchorPane>
</children>
</StackPane>
ように見えます。それはいくつかの作業芽を行う必要があります。
jewelseaで述べたように、controlsfxには既に実装が必要なものがあります。正しく覚えていれば、ソースコードと動作中のすべてのものを見ることができるcontrolfxサンプルjarも提供しています。その時点からそれを実装するのは本当に些細なことです。新しいバージョンのJavaに更新されたときには、私は過去の制御で問題を抱えていました。
+0
実際に動かす必要はありません。ちょうどそのような静的なコンテナは、トリックを行う必要があります! – User
関連する問題
- 1. JavaFXのウィンドウ内の「x」ボタン
- 2. JavaFX内のオブジェクトの配列
- 3. JavaFX - テキストフィールド/テキストエリア内のインラインイメージ
- 4. JavaFXタスク内でJavaFXダイアログを作成する
- 5. パブリッククラス内のネストされたJavaFXコントローラ
- 6. グループ内の中心画像JavaFX
- 7. JavaFxペイン内のシーンを作成
- 8. 画面内のJavafx中心形状グループ
- 9. JavaFX TableViewの列が内容に合う
- 10. JavaFx描画イメージ内部ペイン
- 11. のJavaFX ConcurrentModificationExceptionが(ダイアログ)私のJavaFXアプリケーションで
- 12. SwingでのJavaFX
- 13. javafxのTableColumn内のチェックボックスでonclickイベントをトリガする方法
- 14. JavaFX、矢印キーでGridPane内のノードを移動
- 15. VBox内のテーブルでスクロールバーを削除する方法(JavaFX)
- 16. JavaFXで選択したテキストフィールドの内容を取得
- 17. JavaFX WebViewでのキャッシュ
- 18. 私のアプリケーションでjavafx
- 19. のJavaFX:1のTableColumn内の2つの値
- 20. JavaFX - サイズのCSS変数?私のJavaFXのプログラムで
- 21. Javafxでスクロールペインの内容をどのように翻訳するのですか?
- 22. JavaFX、ループ内にスレッドを作成する
- 23. JavaFXの例外:JavaFXの/アプリケーション/アプリケーション
- 24. JavaFXの
- 25. JavaFXの
- 26. JavaFX - ダイアログ内のスクロールペインの交互の高さ
- 27. GridFaneでのLabelのJavaFXアライメント
- 28. javaFXでのポイントの結合
- 29. JavaFXのタイマーでカウントボタンのクリック
- 30. JavaFXでのベクターグラフィックスの使用
ControlsFXがこの機能を使用していました([軽量のダイアログを参照](http://fxexperience.com/controlsfx/features/dialogs/))。しかし、最近のControlsFXのビルドでは、軽量のダイアログ機能が廃止されました(http://stackoverflow.com/questions/26341152/controlsfx-dialogs-deprecated-for-what)。代わりに、ControlsFXはJavaFXコアAPIに実装されたダイアログのみを使用します。これは自己完結型のステージです。 [ControlsFXの古いブランチソースコード](https://bitbucket.org/controlsfx/controlsfx/branches/)を見直して、元々の軽量ダイアログの実装をどのように達成したかを確認することもできます。 – jewelsea
ControlsFX [軽量ダイアログソース実装](https://bitbucket.org/controlsfx/controlsfx/src/371bca0e905536ca6742d181fdade07258260659/controlsfx/src/main/java/org/controlsfx/dialog/LightweightDialog.java?at=8.0.6_20&fileviewer=file -view-default)(現在サポートされていません)。 – jewelsea