Класс Stage

Последнее обновление: 26.09.2021

Основой для создания графического интерфейса в JavaFX является класс javafx.stage.Stage. По сути он является контейнером, в который помещаются все остальные компоненты интерфейса. Его конкретная реализация зависит от платформы, на которой запускается приложение. Так, на десктопах это будет отдельное графическое окно, а на мобильных устройствах интерфейс может представлять весь экран устройства.

В программе на JavaFX можно использовать множество объектов Stage, но один из них является основным. При запуске приложения основной объект Stage создается средой JavaFX и передается в метод start():

@Override
public void start(Stage primaryStage) {
}

Этот объект Stage определяет главное окно или экран программы. Однако внутри приложения мы также можем создавать другие объекты Stage - другие графические окна.

Класс Stage унаследован от класса javafx.stage.Window, который опредляет базовые возможности окна приложения.

Stage позволяет управлять позиционированием, размерами и некоторыми другими настройками окна приложения. Рассмотрим некоторые основные методы класса Stage:

  • close(): закрывает объект Stage (на десктопах по сути закрывает окно)

  • hide(): cкрывает окно

  • centerOnScreen(): располагает окно в центре экрана

  • toBack(): перемещает окно на задний план

  • toFront(): перемещает окно на передний план

  • sizeToScene(): устанавливает размеры окна в соответствии с размерами содержимого объекта Scene

  • show(): отображает окно

  • getX(): возвращает x-координату окна

  • getY(): возвращает y-координату окна

  • getWidth(): возвращает ширину

  • getHeight(): возвращает высоту

  • getScene(): возвращает объект Scene окна

  • getOpacity(): возвращает значение прозрачности

  • getTitle(): возвращает заголовок

  • getMaxHeight(): возвращает максимальную высоту

  • getMaxWidth(): возвращает максимальную ширину

  • getMinHeight(): возвращает минимальную высоту

  • getMinWidth(): возвращает минимльную ширину

  • getStyle(): возвращает стиль окна в виде объекта StagesStyle

  • getModality(): возвращает модальность окна в виде объекта Modality

  • getOwner(): возвращает родительское окно в виде объекта Window, которое владеет текущим окном

  • getTitle(): возвращает заголовок

  • initModality(Modality modality): устанавливает модальность окна

  • initOwner(Window owner): устанавливает родительское окно

  • initStyle(StageStyle style): устанавливает стиль окна

  • setAlwaysOnTop(boolean value): при передаче значения true окно будет всегда располагаться поверх других окон

  • setFullScreen(boolean value): при передаче значения true окно раскрывается на весь экран

  • setOpacity(double value): устанавливает прозрачность

  • setResizable(boolean value): при передачи значения true позволяет изменять размеры окна (растягивать его и сжимать)

  • setScene(Scene value): устанавливает сцену (объект Scene) для объекта Stage

  • setTitle(String value): устанавливает заголовок окна

  • setMaxHeight(double value): устанавливает максимальную высоту

  • setMaxWidth(double value): устанавливает максимальную ширину

  • setMinHeight(double value): устанавливает минимальную высоту

  • setMinWidth(double value): устанавливает минимальную ширину

  • setHeight(double value): устанавливает высоту окна

  • setWidth(double value): устанавливает ширину окна

  • setX(double value): устанавливает координату X окна, то есть положение по горизонтали

  • setY(double value): устанавливает координату Y окна, то есть положение по вертикали

При простейшего создания окна:

import javafx.application.Application;
import javafx.stage.Stage;

public class Main extends Application{
	
	public static void main(String[] args) {
        
		launch(args);
    }
	
	@Override
    public void start(Stage stage) {
		
        stage.setTitle("Hello JavaFX");	// установка заголовка
		stage.setWidth(250);			// установка ширины
		stage.setHeight(150);			// установка длины
        stage.show();					// отображение окна на экране
	}
}
Stage и создание окон в JavaFX
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850