2016-07-23 112 views
1

我有一個窗格對象,用戶可以在其中拖放各種ImageView。爲此,我使用了 pane.getChildren(imageViewObject) 方法JavaFX:將孩子添加到ScrollPane中

現在,在用ScrollPane替換Pane後,它沒有此方法。所以我不知道如何得到這個問題。

預先感謝您

回答

6

您可以ScrollPane只能指定一個節點。要創建具有多個組件的滾動視圖,請使用佈局容器或Group類。

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); 
    } 

} 
+0

這是不太我一直在尋找的解決方案。現在的問題是,ScrollPane只能從側欄滾動。 – Alex

+0

call'scrollPane.setPannable(true);' – Kachna

相關問題