ScrollPane

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

Элементы управления не всегда могут помещаться в отведенное им пространство. В этом случае мы можем использовать полосы прокрутки для удобного обращения к подобным элементам управления. Для создания возможности прокрутки в JavaFX применяется класс javafx.scene.control.ScrollPane.

ScrollPane определяет два конструктора:

  • ScrollPane(): создает пустой объект ScrollPane

  • ScrollPane(Node content): создает объект ScrollPane, в который помещается узел content

Для управления прокручиваемым содержимым ScrollPane определяет ряд методов. Некоторые из них:

  • void setContent(Node content): устанавливает содержимое в ScrollPane

  • void setPrefViewportHeight(double height): устанавливает предпочтительную высоту видимого пространства в ScrollPane

  • void setPrefViewportWidth(double width): устанавливает предпочтительную ширину видимого пространства в ScrollPane

import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.FlowPane;
import javafx.scene.control.Label;
import javafx.scene.control.ScrollPane;

import javafx.geometry.Orientation;
 
public class Main extends Application{
	
    public static void main(String[] args) {
         
        Application.launch(args);
    }
     
    @Override
    public void start(Stage stage) throws Exception {
         
        Label headerLbl = new Label("ScrollPane");
		Label textLbl = new Label("Lorem Ipsum is simply dummy text of the printing and typesetting \n" + 
		"industry. Lorem Ipsum has been the industry standard dummy \n" + 
		"text ever since the 1500s, when an unknown printer took a galley...");
		
		ScrollPane scrollPane = new ScrollPane(textLbl);
		scrollPane.setPrefViewportHeight(150);
		scrollPane.setPrefViewportWidth(200);
		
		FlowPane root = new FlowPane(Orientation.VERTICAL, 10, 10, headerLbl, scrollPane);
        Scene scene = new Scene(root, 300, 250);
         
        stage.setScene(scene);
        stage.setTitle("ScrollPane in JavaFX");
        stage.show();
    }
}
ScrollPane in JavaFX

С помощью методов setVvalue(double value) и setHvalue(double value) можно установить положение ползунка прокрутки по вертикали и по горизонтали соответственно. В качестве значения в методы передается число от 0 до 1, где 0 - это начало, а 1 - конец. Например, определим положение ползунка прокрутки по середине:

ScrollPane scrollPane = new ScrollPane(textLbl);
scrollPane.setPrefViewportHeight(150);
scrollPane.setPrefViewportWidth(200);
scrollPane.setPannable(false);
scrollPane.setVvalue(0.5);
scrollPane.setHvalue(0.5);
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850