JavaFX Text scroll with ScrollPane
JavaFx Layout Management: Exercise-13 with Solution
Write a JavaFX program that uses a ScrollPane to scroll through a long text document.
Sample Solution:
JavaFx Code:
//Main.java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TextArea;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Text ScrollPane Example");
// Create a TextArea to hold the long text document
TextArea textArea = new TextArea();
textArea.setWrapText(true); // Enable text wrapping
// Add your long text here (or load it from a file)
String longText = "In the exercise above, we create a 'TextArea' to hold the long text document. \n" +
"We enable text wrapping and set the text content. A 'ScrollPane' is used to display the 'TextArea' with scrollbars.\n" +
"The scroll policy is set to 'AS_NEEDED' for both horizontal and vertical scrollbars." +
"Finally, the 'ScrollPane' is added to a 'StackPane', which is added to the 'Scene' and displayed in the 'Stage'."+
"Note: Replace the 'longText' variable with your own long text or load it from a file.";
textArea.setText(longText);
// Create a ScrollPane to display the TextArea with scrollbars
ScrollPane scrollPane = new ScrollPane(textArea);
// Set scroll policy to ensure both horizontal and vertical scrollbars appear as needed
scrollPane.setHbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
scrollPane.setVbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
// Create a StackPane to hold the ScrollPane
StackPane root = new StackPane();
root.getChildren().add(scrollPane);
// Create a scene and add it to the stage
Scene scene = new Scene(root, 600, 400);
primaryStage.setScene(scene);
primaryStage.show();
}
}
In the exercise above, we create a 'TextArea' to hold the long text document. We enable text wrapping and set the text content. A 'ScrollPane' is used to display the 'TextArea' with scrollbars. The scroll policy is set to "AS_NEEDED" for both horizontal and vertical scrollbars. Finally, the 'ScrollPane' is added to a 'StackPane', which is added to the 'Scene' and displayed in the 'Stage'.
Note: Replace the 'longText' variable with your own long text or load it from a file.
Sample Output:
Flowchart:
Java Code Editor:
Previous: JavaFX Image scroll with ScrollPane.
Next: JavaFX Scrollable data table example.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/java-exercises/javafx/javafx-layout-management-exercise-13.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics