如何解决javaFX 2.0将组件设置为直接父级的全宽和全高
|| 如何使“ 0”占据父窗格的整个宽度和高度。 我尝试了这个:TextArea textArea = new TextArea();
textArea.setScaleX( 100 );
textArea.setScaleY( 100 );
但是覆盖了通过“ 2”在顶部定义的元素。
降低scaleY
无效。
为了达到这个目的,我还需要做什么?
谢谢
解决方法
MAX_VALUE解决方案有点笨拙,可能会导致性能问题。另外,答案可能取决于您的父容器是什么。无论如何,更好的方法是这样的:
textArea.prefWidthProperty().bind(<parentControl>.prefWidthProperty());
textArea.prefHeightProperty().bind(<parentConrol>.prefHeightProperty());
您可能还希望将首选属性绑定到实际属性,特别是如果父级使用的是其计算尺寸而不是显式尺寸:
textArea.prefWidthProperty().bind(<parentControl>.widthProperty());
textArea.prefHeightProperty().bind(<parentConrol>.heightProperty());
也可以通过重写父容器的layoutChildren()方法并调用而无需使用绑定来执行此操作
textArea.resize(getWidth(),getHeight());
不要忘记调用super.layoutChildren()...
, 解决了这个
textArea.setPrefSize( Double.MAX_VALUE,Double.MAX_VALUE );
, 您可以通过将ѭ0放入ѭ9中来实现。
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);
您也可以将其放置在HBox
或ѭ12inside中。然后将调整大小限制为水平/垂直方向。不知道这是否是一个问题。
, <TextArea style=\"-fx-pref-height: 10px;\"/>
, 您可以通过创建一个CSS文件来做到这一点。
textarea
{
width://your width
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。