Как да обединим клетки в JavaFX Scene builder?

Имам мрежов панел, който изглежда като KeyBoard, и трябва да обединя някои клетки, за да сложа бутон „Интервал“. Но не мога да намеря никаква опция в настройките на мрежовия панел, която да реши проблема ми.. Някой има ли идея как Мога ли да го постигна?


person Artem Ruchkov    schedule 20.01.2014    source източник


Отговори (1)


Настройте своята мрежа с елементи в нея

  1. Създайте GridPane.
  2. Поставете възли в мрежата.
  3. Изберете възел в мрежата.

Много, много важно е на този етап да бъде избран възел в мрежата. . .

След това или:

А. Използвайте елементите от менюто

  1. Изберете Modify | GridPane
  2. Изберете някоя от

    Increase Row Span
    Decrease Row Span
    Increase Column Span
    Decrease Column Span
    

Б. Използвайте панела за оформление

  1. Променете стойностите на обхвата на редовете или обхвата на колоните.

Бележки за оформлението

За да получите наистина нещо, което да запълни мрежата и да обхване редове или колони по желания от вас начин, може да се наложи да промените други параметри на оформлението на възела или неговите ограничения на мрежата в панела за оформление. Например бутонът обикновено няма да надхвърли предпочитания размер, така че задайте максималната му височина и ширина на MAX_VALUE. Друг пример е да имате етикет, центриран в две колони, да зададете неговия Hgrow на ВИНАГИ и неговото изравняване на CENTER.

Примерна екранна снимка

Има елементи от менюто за настройка на обхвата на редовете и колоните, а също и текстови полета за оформление в най-дясната част. За съжаление, StackOverflow компресира снимката и я прави малко замъглена.

gridview

Примерен FXML

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

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.paint.*?>

<AnchorPane id="AnchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2">
  <children>
    <GridPane layoutX="116.0" layoutY="155.0">
      <children>
        <Button maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="Button" GridPane.columnIndex="0" GridPane.columnSpan="2147483647" GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS" />
        <Label text="Label" GridPane.columnIndex="0" GridPane.rowIndex="0" />
        <Label maxWidth="-1.0" text="Label" GridPane.columnIndex="1" GridPane.columnSpan="2" GridPane.halignment="CENTER" GridPane.hgrow="ALWAYS" GridPane.rowIndex="0" />
        <Label text="Label" GridPane.columnIndex="0" GridPane.rowIndex="2" />
        <Label text="Label" GridPane.columnIndex="1" GridPane.rowIndex="2" GridPane.rowSpan="2" />
        <Label text="Label" GridPane.columnIndex="2" GridPane.rowIndex="2" />
        <Label text="Label" GridPane.columnIndex="2" GridPane.rowIndex="3" />
      </children>
      <columnConstraints>
        <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
        <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
        <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
      </columnConstraints>
      <rowConstraints>
        <RowConstraints maxHeight="30.0" minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
        <RowConstraints maxHeight="30.0" minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
        <RowConstraints maxHeight="30.0" minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
        <RowConstraints maxHeight="30.0" minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
      </rowConstraints>
    </GridPane>
  </children>
</AnchorPane>
person jewelsea    schedule 20.01.2014