代码之家  ›  专栏  ›  技术社区  ›  Youssef

边框窗格-JavaFX场景生成器-滚动条向下按钮不可见

  •  -1
  • Youssef  · 技术社区  · 7 年前

    我对BorderPanes(EBMTableView)下滚动条按钮的位置/可见性有一个小问题-JavaFX场景生成器

    我希望如果最小化窗口,底部滚动条按钮始终可见。

    非常感谢你

    请检查GUI和imgs的代码。

        <?xml version="1.0" encoding="UTF-8"?>
    
    <?import de.riconn.fx_ebm_control.gui.views.abgleich.*?>
    <?import de.riconn.fx_ebm_control.gui.views.arzt_aktuell.*?>
    <?import de.riconn.fx_ebm_control.gui.views.ebm.*?>
    <?import de.riconn.fx_ebm_control.gui.views.frequenz.*?>
    <?import javafx.geometry.Insets?>
    <?import javafx.scene.control.Button?>
    <?import javafx.scene.control.Menu?>
    <?import javafx.scene.control.MenuBar?>
    <?import javafx.scene.control.MenuItem?>
    <?import javafx.scene.control.Tab?>
    <?import javafx.scene.control.TabPane?>
    <?import javafx.scene.control.TableColumn?>
    <?import javafx.scene.control.TableView?>
    <?import javafx.scene.effect.Glow?>
    <?import javafx.scene.layout.AnchorPane?>
    <?import javafx.scene.layout.BorderPane?>
    <?import javafx.scene.layout.HBox?>
    
    <BorderPane maxHeight="-Infinity" maxWidth="-Infinity"
        minHeight="-Infinity" minWidth="-Infinity" prefHeight="900.0"
        prefWidth="1230.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"
        fx:controller="de.riconn.fx_ebm_control.gui.WpdlTxtControler">
        <center>
            <TabPane prefHeight="200.0" prefWidth="200.0"
                tabClosingPolicy="UNAVAILABLE" BorderPane.alignment="CENTER">
                <tabs>
                    <Tab fx:id="tab_patient" onSelectionChanged="#tab_Patienten_Selected"
                        text="Patientenliste">
                        <content>
                            <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0"
                                prefWidth="200.0">
                                <children>
                                    <BorderPane layoutX="107.0" layoutY="53.0"
                                        prefHeight="346.0" prefWidth="600.0" AnchorPane.bottomAnchor="0.0"
                                        AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0"
                                        AnchorPane.topAnchor="0.0">
                                        <top>
                                            <Button fx:id="btn_PatientenOpen" mnemonicParsing="false"
                                                onAction="#openPatientenListe" text="Patientenliste öffnen.."
                                                BorderPane.alignment="CENTER" />
                                        </top>
                                        <center>
                                            <ArztAktuellTableView fx:id="tv_patientContainer"
                                                prefHeight="494.0" prefWidth="829.0" BorderPane.alignment="CENTER" />
                                        </center>
                                    </BorderPane>
                                </children>
                            </AnchorPane>
                        </content>
                    </Tab>
                    <Tab fx:id="tab_frequenz" onSelectionChanged="#tab_Frequenz_Selected"
                        text="Frequenztabelle">
                        <content>
                            <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0"
                                prefWidth="200.0">
                                <children>
                                    <BorderPane layoutX="109.0" layoutY="49.0"
                                        prefHeight="346.0" prefWidth="600.0" AnchorPane.bottomAnchor="0.0"
                                        AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0"
                                        AnchorPane.topAnchor="0.0">
                                        <top>
                                            <Button fx:id="btn_FrequenzOpen" mnemonicParsing="false"
                                                onAction="#openFrequenzFile" text="Frequenztabelle öffnen..."
                                                BorderPane.alignment="CENTER" />
                                        </top>
                                        <center>
                                            <FrequenzTableView fx:id="tv_frequenzContainer"
                                                prefHeight="494.0" prefWidth="829.0" BorderPane.alignment="CENTER_RIGHT" />
                                        </center>
                                    </BorderPane>
                                </children>
                            </AnchorPane>
                        </content>
                    </Tab>
                    <Tab fx:id="tab_abgleich" onSelectionChanged="#tab_Abgleich_Selected"
                        text="Abgleichsliste">
                        <content>
                            <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0"
                                prefWidth="200.0">
                                <children>
                                    <BorderPane layoutX="69.0" layoutY="51.0" prefHeight="346.0"
                                        prefWidth="600.0" AnchorPane.bottomAnchor="0.0"
                                        AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0"
                                        AnchorPane.topAnchor="0.0">
                                        <top>
                                            <HBox alignment="TOP_RIGHT" spacing="10.0">
                                                <Button fx:id="btn_AbgleichToPdf" mnemonicParsing="false"
                                                    onAction="#viewAbgleichAsPdf" text="Als PDF öffnen..."
                                                    BorderPane.alignment="CENTER" />
                                                <BorderPane.margin>
                                                    <Insets right="10.0" />
                                                </BorderPane.margin>
                                            </HBox>
                                        </top>
                                        <center>
                                            <AbgleichTableView fx:id="tv_abgleichContainer"
                                                prefHeight="200.0" prefWidth="200.0" BorderPane.alignment="CENTER" />
                                        </center>
                                    </BorderPane>
                                </children>
                            </AnchorPane>
                        </content>
                    </Tab>
                    <Tab fx:id="tab_EBM" onSelectionChanged="#tab_EBM_Selected"
                        text="EBM Liste">
                        <content>
                            <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0"
                                prefWidth="200.0">
                                <children>
                                    <BorderPane layoutX="489.0" layoutY="229.0"
                                        prefHeight="829.0" prefWidth="1200.0" AnchorPane.bottomAnchor="0.0"
                                        AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0"
                                        AnchorPane.topAnchor="0.0">
                                        <top>
                                            <HBox alignment="TOP_RIGHT" spacing="10.0">
                                                <Button fx:id="btn_minus_ebm" mnemonicParsing="false"
                                                    onAction="#delete_ebm" text="-">
                                                </Button>
                                                <Button fx:id="btn_plus_ebm" mnemonicParsing="false"
                                                    onAction="#add_ebm" text="+">
                                                </Button>
                                                <BorderPane.margin>
                                                    <Insets right="10.0" />
                                                </BorderPane.margin>
                                            </HBox>
                                        </top>
                                        <center>
                                            <EBMTableView fx:id="tv_EBMContainer" editable="true"
                                                prefHeight="200.0" prefWidth="200.0" tableMenuButtonVisible="true"
                                                BorderPane.alignment="CENTER" />
                                        </center>
                                    </BorderPane>
                                </children>
                            </AnchorPane>
                        </content>
                    </Tab>
                </tabs>
            </TabPane>
        </center>
        <top>
            <MenuBar prefHeight="0.0" prefWidth="878.0"
                BorderPane.alignment="CENTER">
                <menus>
                    <Menu mnemonicParsing="false" text="File">
                        <items>
                            <MenuItem mnemonicParsing="false" onAction="#openFrequenzFile"
                                text="Frequenztabelle öffnen..." />
                            <MenuItem mnemonicParsing="false" onAction="#openPatientenListe"
                                text="Patientenliste öffnen..." />
                            <MenuItem mnemonicParsing="false" onAction="#close" text="Close" />
                        </items>
                    </Menu>
                    <Menu mnemonicParsing="false" text="Edit">
                        <items>
                            <MenuItem fx:id="m_add_ebm" disable="true" mnemonicParsing="false" onAction="#add_ebm"
                                text="hinzufügen" />
                            <MenuItem fx:id="m_delete_ebm" disable="true" mnemonicParsing="false" onAction="#delete_ebm"
                                text="löschen" />
                        </items>
                    </Menu>
                    <Menu mnemonicParsing="false" text="Abgleich">
                        <items>
                            <MenuItem fx:id="m_viewAbgleichAsPdf" disable="true" mnemonicParsing="false"
                                onAction="#viewAbgleichAsPdf" text="Als PDF öffnen" />
                        </items>
                    </Menu>
                    <Menu mnemonicParsing="false" text="Help">
                        <items>
                            <MenuItem mnemonicParsing="false" onAction="#openAboutDialog"
                                text="About" />
                        </items>
                    </Menu>
                </menus>
            </MenuBar>
        </top>
    </BorderPane>
    

    JavaFX Scene Builder structure

    windows with scrollButton

    windows without scrollButton after minimizing

    1 回复  |  直到 7 年前
        1
  •  0
  •   Youssef    7 年前

    问题解决了,只需像这样更改第一个BorderPane参数->

    <BorderPane maxHeight="0" maxWidth="0"
    minHeight="0" minWidth="0" prefHeight="0"
    prefWidth="1230.0" xmlns="http://javafx.com/javafx/8.0.111" 
    xmlns:fx="http://javafx.com/fxml/1"