/** * Retrieves data about he window settings from the previous session and applies * them to the stage. These settings include window size, position and if * it was maximized or not. * * @param stage the stage to apply these settings to * @param name the name under which we stored the settings */ public static void applyStoredDisplaySettings(Stage stage, String name){ try { if( PREFERENCES.nodeExists(name) ){ Preferences stagePreferences = PREFERENCES.node(name); boolean wasMaximized = stagePreferences.getBoolean(WINDOW_MAXIMIZED, false); if( wasMaximized ){ stage.setMaximized(true); } else { stage.setX( stagePreferences.getDouble(WINDOW_X_POS, DEFUALT_X)); stage.setY( stagePreferences.getDouble(WINDOW_Y_POS, DEFUALT_Y)); stage.setWidth( stagePreferences.getDouble(WINDOW_WIDTH, DEFUALT_WIDTH)); stage.setHeight(stagePreferences.getDouble(WINDOW_HEIGHT, DEFUALT_HEIHGT)); } } } catch (BackingStoreException ex) { LOGGER.error(ex, "Could not access preferences for window " + name); } }
} else if (Cursor.W_RESIZE.equals(cursor)) { if (setStageWidth(initWidth - deltax)) { primaryStage.setX(initStageX + deltax); primaryStage.setX(initStageX + deltax); } else if (Cursor.NW_RESIZE.equals(cursor)) { if (setStageWidth(initWidth - deltax)) { primaryStage.setX(initStageX + deltax); primaryStage.setX(mouseEvent.getScreenX() - xOffset); primaryStage.setY(mouseEvent.getScreenY() - yOffset); mouseEvent.consume();
private void fixPosition() { Window w = dialog.getOwner(); Screen s = com.sun.javafx.util.Utils.getScreen(w); Rectangle2D sb = s.getBounds(); double xR = w.getX() + w.getWidth(); double xL = w.getX() - dialog.getWidth(); double x; double y; if (sb.getMaxX() >= xR + dialog.getWidth()) { x = xR; } else if (sb.getMinX() <= xL) { x = xL; } else { x = Math.max(sb.getMinX(), sb.getMaxX() - dialog.getWidth()); } y = Math.max(sb.getMinY(), Math.min(sb.getMaxY() - dialog.getHeight(), w.getY())); dialog.setX(x); dialog.setY(y); }
public class CenterStage extends Application { @Override public void start(final Stage stage) throws Exception { stage.setX(300); stage.setWidth(800); stage.setHeight(400); stage.show(); final Stage childStage = new Stage(); childStage.setWidth(200); childStage.setHeight(200); childStage.setX(stage.getX() + stage.getWidth() / 2 - childStage.getWidth() / 2); childStage.setY(stage.getY() + stage.getHeight() / 2 - childStage.getHeight() / 2); childStage.show(); } public static void main(String[] args) { Application.launch(args); } }
private void defaultStageStatus() { Rectangle2D primScreenBounds = Screen.getPrimary().getVisualBounds(); stage.setX((primScreenBounds.getWidth() - stage.getWidth()) / 2); stage.setY((primScreenBounds.getHeight() - stage.getHeight()) / 4); stage.setMaximized(true); }
@Override public void handle(MouseEvent event) { primaryStage.setX(event.getScreenX() - xOffset); primaryStage.setY(event.getScreenY() - yOffset);
private void restore(StageStatus latestStatus) { stage.setX(latestStatus.getX()); stage.setY(latestStatus.getY()); stage.setWidth(latestStatus.getWidth()); stage.setHeight(latestStatus.getHeight()); if (isNotMac()) { latestStatus.getMode().restore(stage); } }
byNode.setOnMouseDragged(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent mouseEvent) { stage.setX(mouseEvent.getScreenX() + dragDelta.x); stage.setY(mouseEvent.getScreenY() + dragDelta.y);
public void updateCoordinates(double screenX, double screenY) { this.popupWindow.setX(screenX - this.popupWindow.getWidth() / 2); this.popupWindow.setY(screenY + 20); }
Screen screen2 = Screen.getScreens().get(primaryMon); Stage stage2 = new Stage(); stage2.setScene(new Scene(new Label("primary"))); //we need to set the window position to the primary monitor: stage2.setX(screen2.getVisualBounds().getMinX()); stage2.setY(screen2.getVisualBounds().getMinY()); stage2.setFullScreen(true); stage2.show();
@Override public void start(Stage stage) { Scene scene = new Scene(new Group()); scene.setRoot(new BuildLayout(stage)); Screen screen = Screen.getPrimary(); Rectangle2D bounds = screen.getVisualBounds(); stage.setTitle("Application Name"); stage.setScene(scene); stage.setX(bounds.getMinX()); stage.setY(bounds.getMinY()); stage.setWidth(bounds.getWidth()); stage.setHeight(bounds.getHeight()); stage.show(); }
Stage stage = new Stage(); stage.initStyle(StageStyle.UTILITY); stage.setMaxHeight(0); stage.setMaxWidth(0); stage.setX(Double.MAX_VALUE);
final Stage dialog = new Stage(); dialog.initOwner(window); dialog.initModality(Modality.WINDOW_MODAL); dialog.sizeToScene(); dialog.setScene(scene); Platform.runLater(new Runnable() { @Override public void run() { dialog.setX(primaryStage.getX() + primaryStage.getWidth() / 2 - dialog.getWidth() / 2); //dialog.getWidth() = NaN dialog.setY(primaryStage.getY() + primaryStage.getHeight() / 2 - dialog.getHeight() / 2); //dialog.getHeight() = NaN } }); dialog.showAndWait();
public void updateFeedback(Consumer<StackPane> consumer) { consumer.accept((StackPane) this.popupWindow.getScene().getRoot()); this.popupWindow.sizeToScene(); this.popupWindow.setX(this.screenX - this.popupWindow.getWidth() / 2); this.popupWindow.setY(this.screenY + 20); this.popupWindow.show(); }
public void updateFeedback(Consumer<StackPane> consumer) { consumer.accept((StackPane) this.popupWindow.getScene().getRoot()); this.popupWindow.sizeToScene(); this.popupWindow.setX(this.screenX - this.popupWindow.getWidth() / 2); this.popupWindow.setY(this.screenY + 20); this.popupWindow.show(); }
public void restoreSavedBounds(Stage stage, boolean fullscreen) { if (savedBounds != null) { stage.setX(savedBounds.getMinX()); stage.setY(savedBounds.getMinY()); stage.setWidth(savedBounds.getWidth()); stage.setHeight(savedBounds.getHeight()); savedBounds = null; } }
public void restoreFullScreenSavedBounds(Stage stage) { if (savedFullScreenBounds != null) { stage.setX(savedFullScreenBounds.getMinX()); stage.setY(savedFullScreenBounds.getMinY()); stage.setWidth(savedFullScreenBounds.getWidth()); stage.setHeight(savedFullScreenBounds.getHeight()); savedFullScreenBounds = null; } }
@Override public void start(Stage stage) { super.start(stage); stage.setTitle(title); Rectangle2D sceneBounds=super.getSceneBounds(screenPercent,divX,divY); setScene(new Scene(region, sceneBounds.getWidth(), sceneBounds.getHeight())); stage.setScene(getScene()); stage.setX(sceneBounds.getMinX()); stage.setY(sceneBounds.getMinY()); stage.show(); }