Mục lục
Hướng dẫn sử dụng JavaFX ScrollPane
Xem thêm các chuyên mục:
Nhóm thành viên của o7planning đã xây dựng một website tuyệt vời và miễn phí giúp mọi người học tiếng Anh, học từ vựng dễ dàng hơn. Hãy truy cập để học tiếng Anh ngay bây giờ:
-
1- JavaFx ScrollPane
-
ScrollPane là một thành phần giao diện có thể cuộn được (scrollable), nó được sử dụng để hiển thị một nội dung lớn trong một không gian bị giới hạn. Nó có các thanh kéo (sroll bar) nằm ngang và thẳng đứng.
-
-
Chính sách ScrollBar
-
Bạn có thể sét đặt chính sách hiển thị cho thanh kéo (Scroll bar):
-
- NEVER - Không bao giờ hiển thị
- ALWAYS - Luôn luôn hiển thị
- AS_NEEDED - Hiển thị khi cần.
-
** ScrollBarPolicy **
// Sét đặt thanh cuộn nằm ngang luôn luôn hiển thị scrollPane.setHbarPolicy(ScrollBarPolicy.ALWAYS); // Sét đặt thanh cuộn thẳng đứng không bao giờ hiển thị scrollPane.setVbarPolicy(ScrollBarPolicy.NEVER);
-
2- Ví dụ với ScrollPane
-
ScrollPaneDemo1.java
package org.o7planning.javafx.scrollpane; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.ScrollPane; import javafx.scene.control.ScrollPane.ScrollBarPolicy; import javafx.stage.Stage; public class ScrollPaneDemo1 extends Application { @Override public void start(Stage primaryStage) { // Tạo một ScrollPane ScrollPane scrollPane = new ScrollPane(); Button button = new Button("My Button"); button.setPrefSize(400, 300); // Sét đặt nội dung nằm trong ScrollPane. scrollPane.setContent(button); // Luôn luôn hiển thị thanh kéo thẳng đứng scrollPane.setVbarPolicy(ScrollBarPolicy.ALWAYS); // Thanh kéo ngang chỉ hiển thị khi cần scrollPane.setHbarPolicy(ScrollBarPolicy.AS_NEEDED); primaryStage.setTitle("ScrollPane Demo 1 (o7planning.org)"); Scene scene = new Scene(scrollPane, 550, 200); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
-
Chạy ví dụ:
-
-
3- Ví dụ với ScrollPane và Pannable
-
ScrollPaneDemo2.java
package org.o7planning.javafx.scrollpane; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.ScrollPane; import javafx.scene.layout.FlowPane; import javafx.stage.Stage; public class ScrollPaneDemo2 extends Application { @Override public void start(Stage primaryStage) { final FlowPane container = new FlowPane(); // Button 1 Button button1= new Button("Button 1"); button1.setPrefSize(350, 100); container.getChildren().add(button1); // Button 2 Button button2= new Button("Button 2"); button2.setPrefSize(245, 220); container.getChildren().add(button2); // ScrollPane ScrollPane scrollPane = new ScrollPane(); scrollPane.setContent(container); // Pannable. scrollPane.setPannable(true); primaryStage.setTitle("ScrollPane Demo 2 (o7planning.org)"); Scene scene = new Scene(scrollPane, 550, 200); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
-
Chạy ví dụ:
-