我正在使用 javaFX Scene Builder 来创建表格视图。要求是表格应该显示 2 个空行,允许用户填写数据。但它显示“表中没有内容”。如何将空行添加到表中?表中的第一列是可编辑的,它是必填字段。我需要以红色显示第一列名称,表示它是必填字段。如何设置文本颜色?
问问题
4086 次
1 回答
4
我需要以红色显示第一列名称,表示它是必填字段。如何设置文本颜色?
使用 css。
文件 redhead.css
.redhead #colx .label {
-fx-font-size: 1.2em;
-fx-font-weight: bold;
-fx-text-fill: mediumvioletred;
-fx-background-color: linear-gradient(to bottom, azure, mediumturquoise);
}
示例 FXML
<?xml version="1.0" encoding="UTF-8"?>
<?scenebuilder-stylesheet redhead.css?>
<?import javafx.scene.control.TableColumn?>
<?import javafx.scene.control.TableView?>
<?import javafx.scene.layout.AnchorPane?>
<AnchorPane id="AnchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="139.99990000000253" prefWidth="309.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2">
<children>
<TableView layoutX="25.0" layoutY="24.0" prefHeight="93.0" prefWidth="250.0" styleClass="redhead">
<columns>
<TableColumn id="colx" maxWidth="5000.0" minWidth="10.0" prefWidth="158.0" style="" styleClass="redhead" text="Column X" />
<TableColumn prefWidth="75.0" text="Column Y" />
</columns>
</TableView>
</children>
</AnchorPane>
要求是表格应该显示 2 个空行,允许用户填写数据。但它显示“表中没有内容”。如何将空行添加到表中?
这有点类似于How can I bypass the JavaFX's TableView "placeholder"? (目前没有公认的答案)。
JavaFX 问题跟踪器中有一个现有的功能请求:RT-31086 不要强迫我在空的 TableView 中使用默认的“占位符”。
问一个新问题。包括有关您的新问题与现有问题有何不同的信息、您迄今为止尝试过的代码以及您遇到困难的地方的信息。
如果您的表格中只有两个可编辑的行,那么带有用于标题的标签和用于编辑的 TextFields 的GridPane可能是用于实现您的功能的布局和控件的更好组合,而不是 TableView。
于 2013-10-17T12:58:15.240 回答