我是JavaFX的新手,有一些小麻烦:
我有一个带有几个标签的TabPane,我想让标签标题不可见。因此,用户不应该通过单击标题来更改选项卡,但它将以不同于菜单的方式进行更改。
如何使此选项卡标题不可见/隐藏?这就是问题所在。我不想隐藏整个选项卡或禁用或类似的东西,只想标题。
也许你有另一个完全不同的想法,如何在JavaFX中解决这个问题。也许用另一种控制?
谢谢你的任何提示。
发布于 2012-12-20 23:04:11
我的研究结论:这在JavaFX中是不可能做到的。TabPane标题可以位于控件的顶部、左侧、右侧和底部,但不能隐藏。
发布于 2012-12-18 20:42:28
如果你没有使用Tabs,那么你就不需要TabPane。
您可以只介绍一个内容窗格列表,并根据菜单命令进行切换。
您可以在下一个问题中找到代码示例:How can I implement the functionality of awt.CardLayout in my javaFX 2.0 application?
发布于 2019-09-25 08:10:39
您可以通过将TabPane包装在AnchorPane (根容器)中并根据需要将TabPane的topAnchor设置为负数来实现这一点。
Java代码:
...
AnchorPane.setTopAnchor(myTabPane, -29.0);
AnchorPane.setBottomAnchor(myTabPane, 0);
AnchorPane.setLeftAnchor(myTabPane, 0);
AnchorPane.setRightAnchor(myTabPane, 0);
...同样在FXML中:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.text.*?>
<?import javafx.scene.control.*?>
<?import java.lang.*?>
<?import javafx.scene.*?>
<?import javafx.scene.layout.*?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<children>
<TabPane fx:id="myTabPane" prefHeight="200.0" prefWidth="200.0" tabClosingPolicy="UNAVAILABLE" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="-29.0">
<tabs>
<Tab fx:id="tab1" text="Tab 1">
<content>
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
<children>
<Label text="Tab 1" />
<Button layoutX="35.0" layoutY="2.0" mnemonicParsing="false" text="Go to Tab 2 (non-functional currently)" />
</children>
</AnchorPane>
</content>
</Tab>
<Tab fx:id="tab2" text="Tab 2">
<content>
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
<children>
<Label text="Tab 2" />
<Button layoutX="35.0" layoutY="2.0" mnemonicParsing="false" text="Go to Tab 1 (non-functional currently)" />
</children>
</AnchorPane>
</content>
</Tab>
</tabs>
</TabPane>
</children>
</AnchorPane>https://stackoverflow.com/questions/13933053
复制相似问题