2017-10-30 4 views
0

私は、特定のサイズ(その内容によって決まる)である必要があるスタイル付きjavafx Node(ここではmyLabelと呼ぶ)を持っています。私はGridPaneに配置しています。ペインの列が十分に大きい場合は、余分なスペースを埋めるためにノードが展開されますが、元のサイズを維持します。上記の場合子どもが利用可能な幅に収まるようにするのを防ぐ

GridPane pane = new GridPane(); 
GridPane.setHgrow(pane, Priority.ALWAYS); 

ColumnConstraints col0 = new ColumnConstraints(); 
col0.setHalignment(HPos.LEFT); 
col0.setPrefWidth(300); 
pane.getColumnConstraints().add(col0); 

pane.add(myLabel, 0, 0); 

myLabelは使用可能な全体300px幅を占めるが、私はそれはそれは必要があるとスペースを使用します。

私はGridPane.setHgrow(myLabel, Priority.NEVER)を設定しようとしましたが、これは期待していた効果がありません(ラベルには余分なスペースが割り当てられなくなります)。私はmyLabel.setMaxSize(...,...)を使用したくないです。これは動的なサイズのラベルのやり方になります。私はそれに任意の制約を設定したくありません。

答えて

0

私が探していたオプションはsetHgrow(myLabel, Priority.NEVER)ではなく、setFillWidth(myLabel, false)でした。
setHgrowはノードを含む領域のサイズに影響を与えます.は含まれているノードのサイズに影響を与えますが、必要に応じてサイズを増やすこともできます。 。 'USE_COMPUTED_SIZE' に最小、最大および県幅を設定

Source

0

myLabel.setMinWidth(USE_COMPUTED_SIZE); 
myLabel.setMaxWidth(USE_COMPUTED_SIZE); 
myLabel.setPrefWidth(USE_COMPUTED_SIZE); 
関連する問題