2016-11-20 7 views
-1

私は助けが必要です。どのようにしてHBoxにテキストを配置しますか?私はSceneBuilderを使用しています。私は試してみて、それをどうやってそれを理解することはできません。JavaFX、FXML:HBoxのテキストのセンタリング

ここにFXMLのコードを示します。

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

<?import javafx.geometry.Insets?> 
<?import javafx.geometry.Point3D?> 
<?import javafx.scene.control.TableColumn?> 
<?import javafx.scene.control.TableView?> 
<?import javafx.scene.layout.BorderPane?> 
<?import javafx.scene.layout.HBox?> 
<?import javafx.scene.text.Text?> 

<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> 
<top> 
    <HBox prefHeight="50.0" prefWidth="800.0" BorderPane.alignment="CENTER"> 
    <children> 
     <Text boundsType="LOGICAL_VERTICAL_CENTER" layoutX="600.0" layoutY="600.0" scaleZ="0.0" strokeType="OUTSIDE" strokeWidth="0.0" text="GIANTS DATABASE" textAlignment="CENTER" textOrigin="CENTER" wrappingWidth="231.7841796875" x="600.0" y="600.0"> 
      <rotationAxis> 
       <Point3D x="1.0" y="1.0" z="1.0" /> 
      </rotationAxis> 
     </Text> 
    </children></HBox> 
</top> 
<right> 
    <TableView prefHeight="550.0" prefWidth="577.0" BorderPane.alignment="CENTER"> 
    <columns> 
     <TableColumn minWidth="0.0" prefWidth="72.0" text="Rank" /> 
     <TableColumn editable="false" minWidth="0.0" prefWidth="206.0" text="Name" /> 
     <TableColumn editable="false" minWidth="0.0" prefWidth="88.0" text="Position" /> 
     <TableColumn minWidth="0.0" prefWidth="77.0" text="School" /> 
     <TableColumn minWidth="0.0" prefWidth="66.0" text="Age" /> 
     <TableColumn minWidth="0.0" prefWidth="66.0" text="War" /> 
    </columns> 
    </TableView> 
</right> 
<opaqueInsets> 
    <Insets /> 
</opaqueInsets> 
<padding> 
    <Insets bottom="3.0" right="3.0" /> 
</padding> 

私がセンターにしたいテキストは、HBoxの子供の下で、GIANTS DATABASEある

ここではJavaFXの

public class Login extends Application { 

@Override 
public void start(Stage primaryStage) { 

    try { 
    Parent root = FXMLLoader.load(getClass().getResource("/giants/LoginF.fxml")); 
    Scene scene = new Scene(root); 

    primaryStage.setTitle("Giants Database Login"); 
    primaryStage.setScene(scene); 
    primaryStage.show(); 
    } 
    catch (Exception e) { 

    } 
} 

/** 
* @param args the command line arguments 
*/ 
public static void main(String[] args) { 
    launch(args); 
} 

} 

ためのコードは、ここでのイメージがあるさテキスト* GIANTSデータベース。そして、私は

Here is the image. And where the arrow is, that is where I want to center

答えて

0

**矢印が指しているテキストを中央揃えにしたいTextノード上のboundslayoutX/Yrotation設定を削除する - 彼らはこのために必要とされていません。探しているものはHBoxalignmentプロパティです。Pos.CENTERに設定すると、HBoxの子は縦横にレイアウトされます。あなたはそれを左に維持したい場合はPos.CENTER_LEFTを使用してください。

それはHBoxのは、この背の高いするためにあなたが望むかどうか、あなたの質問からも明らかではない - Textノートのサイズ(プラス任意のパディングを一致させる持っているRegion.USE_COMPUTED_SIZEHBoxprefHeightを変更するために役立つかもしれません/マージンはいずれかに設定されます)。

関連する問題