2013-11-27 4 views
1

JavaFX에서 기본 레이아웃을 만들었습니다. 왼쪽 아래의 TextArea을 사용하여 전체 공백을 사용할 수 있도록 크기를 조정하려면 어떻게해야합니까? 지금은 그냥 수평으로 크기를 조정하지만 수직으로는 조정하지 않습니다.TextArea 가로 및 세로 크기 조정

코드 :

public VBox addVBoxLeft() { 

    VBox vBoxLeft = new VBox(); 
    vBoxLeft.setSpacing(10); 
    vBoxLeft.setPadding(new Insets(10)); 

    //Content vBoxLeft 
    Text titleGamesAvailable = new Text("Games available:"); 
    titleGamesAvailable.setFont(Font.font("Arial", FontWeight.BOLD, 14)); 
    TextArea chatHistory = new TextArea(); 
    chatHistory.setText("..."); 
    chatHistory.setEditable(false); 
    chatHistory.setWrapText(true); 
    chatHistory.setPrefColumnCount(2); 

    vBoxLeft.setAlignment(Pos.TOP_LEFT); 
    vBoxLeft.getChildren().addAll(titleGamesAvailable, availableGamesList(),chatHistory); 

    return vBoxLeft; 
} 

private ListView<String> availableGamesList() { 
    this.availableGamesListView = new ListView<String>(); 
    availableGamesListView.setItems(gamelist); 
    return availableGamesListView; 
} 

public VBox addVBoxRight() { 
    VBox vboxRight = new VBox(); 
    vboxRight.setPadding(new Insets(10)); 
    vboxRight.setSpacing(8); 

    Text title = new Text("Users online:"); 
    title.setFont(Font.font("Arial", FontWeight.BOLD, 14)); 

    this.userOnlineListView = new ListView<String>(); 
    this.userlist = FXCollections.observableArrayList(); 
    userOnlineListView.setItems(userlist); 
    VBox.setVgrow(userOnlineListView, Priority.ALWAYS); 
    vboxRight.getChildren().addAll(title, userOnlineListView); 

    return vboxRight; 
} 

private void _showView() { 
    this.primaryStage = new Stage(); 
    primaryStage.setTitle("Carcassonne"); 

    // Als Grundlayout dient Borderpane 
    BorderPane border = new BorderPane(); 
    border.setPrefSize(1024, 768); 

    // HBox hbox = addHBox(); 
    border.setTop(addHBoxTop()); 
    border.setCenter(addVBoxLeft()); 
    border.setRight(addVBoxRight()); 


    Scene scene = new Scene(border); 

    primaryStage.setScene(scene); 
    primaryStage.setTitle("Lobby"); 
    primaryStage.setMinHeight(600); 
    primaryStage.setMinWidth(800); 
    primaryStage.setFullScreen(false); 
    primaryStage.show(); 
} 

스크린 샷 :

당신은 텍스트 영역에게 당신이

답변

1

당신의 도움. 나는 단지 VBoxes와 함께 borderpane을 사용했고 TOP리스트 만 VGow를 가지고 있습니다.

+1

"앵커 판 사용" 코드 예제로 자세히 설명 할 수 있습니까? – HEATH3N

0

덕분에 원하는 방식으로 스트레칭 AnchorPane를 사용하고 적절한 제약 조건을 설정해야 enter image description here

관련 문제