如何在基线处对齐标签和按钮?

时间:2016-04-27 12:43:14

标签: layout javafx

我想在水平布局中放置标签和按钮(以及文本字段)。这有效,但基线未对齐。如何解决?

Baselines are unaligned

预期的结果是红线(每个控件的基线)处于相同的高度。

这是FXML:

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.HBox?>

<HBox prefHeight="100.0" prefWidth="400.0" spacing="10.0" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1">
   <children>
      <Label text="Label" />
      <Button mnemonicParsing="false" text="Button" />
      <TextField text="Lorem Ipsum" />
   </children>
</HBox>

1 个答案:

答案 0 :(得分:4)

将对齐属性添加到HBox,其值为"BASELINE_LEFT"

<HBox alignment="BASELINE_LEFT" prefHeight="100.0" prefWidth="400.0" spacing="10.0" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1">
   <children>
      <Label text="Label" />
      <Button mnemonicParsing="false" text="Button" />
      <TextField text="Lorem Ipsum" />
   </children>
</HBox>

enter image description here