Windows PCトースト通知を作成しようとしています。現在、SwingとJavaFXを組み合わせて使用しています。FXで装飾されていないウィンドウを作成する方法が見つからなかったためです。 JavaFXのみを使用したいのですが。
では、装飾されていないウィンドウを作成するにはどうすればよいですか?
編集:new Stage(StageStyle.UNDECORATED)
を使用して直接ステージを作成できることを発見しました。
MyApplication
でstart(Stage stage)
メソッドを呼び出すことができるように、ツールキットを初期化する方法を知る必要があるだけです。 (これは_extends Application
_)
私は通常Application.launch(MyApplication.class, null)
を呼び出しますが、これによりStage
の作成とToolkit
の初期化から保護されます。
では、これらのことを行ってstart(new Stage(StageStyle.UNDECORATED))
を直接使用できるようにするにはどうすればよいですか?
ステージを非装飾として設定するstart()メソッドを事前に呼び出すモチベーションは得られませんが、次のコードは目的を達成するはずです。
package decorationtest;
import javafx.application.Application;
import javafx.stage.StageStyle;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class DecorationTest extends Application {
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.initStyle(StageStyle.UNDECORATED);
Group root = new Group();
Scene scene = new Scene(root, 100, 100);
primaryStage.setScene(scene);
primaryStage.show();
}
}