English 中文(简体)
javaFX 2.0 set component to full width and height of immediate parent
原标题:

How can I make a TextArea take the full width and height of the parent pane.

I tried this:

TextArea textArea = new TextArea();
textArea.setScaleX( 100 );
textArea.setScaleY( 100 );

but the element defined in the top via parent.setTop(...) was covered.
Reducing the scaleY had no effect.

What else do I have to do to achieve this?

Thanks

最佳回答

solved with this

textArea.setPrefSize( Double.MAX_VALUE, Double.MAX_VALUE );
问题回答

The MAX_VALUE solution is a bit hacky and could cause performance issues. Also, the answer to this could depend on what your parent container is. Anyway, a better way to do it would be like this:

textArea.prefWidthProperty().bind(<parentControl>.prefWidthProperty());
textArea.prefHeightProperty().bind(<parentConrol>.prefHeightProperty());

You may also want to bind the preferred properties to the actual properties, especially if the parent is using it s computed dimensions rather than explicit ones:

textArea.prefWidthProperty().bind(<parentControl>.widthProperty());
textArea.prefHeightProperty().bind(<parentConrol>.heightProperty());

It s also possible to do this without using binding by overriding the layoutChildren() method of the parent container and calling

textArea.resize(getWidth(), getHeight());

Don t forget to call super.layoutChildren()...

You achieve this by placing the TextArea in a BorderPane.

Stage stage = new Stage();
stage.setTitle("Resizing TextArea");

final BorderPane border = new BorderPane();
Scene scene = new Scene(border);

TextArea textArea = new TextArea();
textArea.setStyle("-fx-background-color: #aabbcc;");

border.setCenter(textArea);

primaryStage.setScene(scene);
primaryStage.setVisible(true);

You can also place it inside an HBox or a VBox. Then resizing is limited to horizontal/vertical direction. Not sure if this is an issue.

<TextArea style="-fx-pref-height: 10px;"/>




相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签