javafx 2 - descargar - Cómo eliminar los botones de la etapa JavaFX(minimizar, maximizar, cerrar)
javafx netbeans (8)
¿Cómo eliminar los botones de escenario JavaFX (minimizar, maximizar, cerrar)? ¿No puedo encontrar ninguno de los métodos de Stage
acordes, así que debo usar el estilo para la etapa? Es necesario para implementar ventanas de diálogo como Error
, Warning
, Info
.
Encontré esta respuesta aquí -> http://javafxportal.blogspot.ie/2012/03/to-remove-javafx-stage-buttons-minimize.html Podemos hacerlo:
enter code here
@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();
}
Si desea desactivar solo el botón Maximizar, entonces use:
stage.resizableProperty().setValue(Boolean.FALSE);
o si quieres deshabilitar maximizar y minimizar excepto el uso cercano
stage.initStyle(StageStyle.UTILITY);
o si quieres eliminar los tres, usa
stage.initStyle(StageStyle.UNDECORATED);
Solo tienes que establecer el estilo de una etapa. Prueba este ejemplo:
package undecorated;
import javafx.application.Application;
import javafx.stage.StageStyle;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class UndecoratedApp 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();
}
}
Al aprender JavaFX 2.0, estos ejemplos son muy útiles.
Tengo el mismo problema, parece que en este momento no es posible una ventana no decorada pero que se puede arrastrar / titular (por razones estéticas) en javafx. El enfoque más cercano es consumir el evento cercano.
stage.setOnCloseRequest(new EventHandler<WindowEvent>() {
@Override
public void handle(WindowEvent event) {
event.consume();
}
});
Si te gusta lambdas
stage.setOnCloseRequest(e->e.consume());
primaryStage.initStyle(StageStyle.UTILITY);
primaryStage.setResizable(false);
stage.initModality(Modality.APPLICATION_MODAL);
stage.setResizable(false);
stage.initStyle(StageStyle.DECORATED);
stage.setResizable(false);