JavaFX:将 children 添加到 ScrollPane
JavaFX: Add children to ScrollPane
我有一个窗格 Object,用户可以在其中拖放各种 ImageView。为此,我使用了
pane.getChildren(imageViewObject)
方法
现在Pane换成ScrollPane后就没有这个方法了。所以我不知道如何解决这个问题。
提前致谢
您只能使用 ScrollPane
指定一个节点。要创建具有多个组件的滚动视图,请使用布局容器或组 class。
Pane pane = ...;
ScrollPane sp = new ScrollPane();
sp.setContent(pane);
示例:
import javafx.application.Application;
import static javafx.application.Application.launch;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ScrollPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
/**
*
* @author kachna
*/
public class Test extends Application {
@Override
public void start(Stage stage) throws Exception {
VBox root = new VBox();
root.getChildren().addAll(new Button("button1"), new Button("button2"), new Button("button3"));
root.setSpacing(10);
root.setPadding(new Insets(10));
ScrollPane sp = new ScrollPane();
sp.setContent(root);
sp.setPannable(true); // it means that the user should be able to pan the viewport by using the mouse.
Scene scene = new Scene(sp, 100, 100);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
我有一个窗格 Object,用户可以在其中拖放各种 ImageView。为此,我使用了
pane.getChildren(imageViewObject)
方法
现在Pane换成ScrollPane后就没有这个方法了。所以我不知道如何解决这个问题。
提前致谢
您只能使用 ScrollPane
指定一个节点。要创建具有多个组件的滚动视图,请使用布局容器或组 class。
Pane pane = ...;
ScrollPane sp = new ScrollPane();
sp.setContent(pane);
示例:
import javafx.application.Application;
import static javafx.application.Application.launch;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ScrollPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
/**
*
* @author kachna
*/
public class Test extends Application {
@Override
public void start(Stage stage) throws Exception {
VBox root = new VBox();
root.getChildren().addAll(new Button("button1"), new Button("button2"), new Button("button3"));
root.setSpacing(10);
root.setPadding(new Insets(10));
ScrollPane sp = new ScrollPane();
sp.setContent(root);
sp.setPannable(true); // it means that the user should be able to pan the viewport by using the mouse.
Scene scene = new Scene(sp, 100, 100);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}