java - 将添加到表格单元格的组合框中的文本居中对齐

标签 java javafx

编辑表格列的代码如下

@FXML
private TableView<StateTransition> stateTransitionTable;
@FXML
private TableColumn<StateTransition, Long> stId;
@FXML
private TableColumn<StateTransition, String> stState;
@FXML
private TableColumn<StateTransition, String> stNewState;

private void setTableEditable(Boolean val){

ObservableList<String> list = FXCollections.observableArrayList(workFlowSet);
stState.setCellFactory(ComboBoxTableCell.forTableColumn(new DefaultStringConverter(), list));

}

此代码在表格单元格中提供组合框,但组合框中的文本位于左侧,我希望文本位于该 ComboBoxTableCell 的中心。

卡在这里,帮我解决一下。

谢谢

最佳答案

您可以使用CSS。如果您向 Scene 添加样式表,文件中应包含以下内容:

.table-column .combo-box .list-cell {
    -fx-alignment: center;
}

.list-cell 是重要的部分(对于不可编辑的 ComboBox),我只放置 .table-column.combo-box 因此并非场景图上的每个 ListCell 都与中心对齐。

看看 JavaFX CSS Reference Guide了解更多 CSS 信息。

关于java - 将添加到表格单元格的组合框中的文本居中对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43465201/

相关文章:

java - java中ip地址与子网掩码的匹配

java - 抽象类和具体类在继承、构造函数等方面的区别

java - 在单独的 JavaFX 线程中排队打印作业

gradle - 我正在使用javafx-gradle-plugin,构建失败并显示 “Couldn'找不到Ant-JavaFX-library。如何指定JavaFX位置?

java - 无法在 JavaFX 项目中使用 getResource() 访问资源

java - Hibernate:同时存在两个或多个事务:事务已处于 Activity 状态

java - PMD "Found ' DD'-异常”与 "only one return statement"

java - Firebase CurrentUser Null,如何保持用户登录所有 Activity ?

Java:不能引用非最终变量

java - JavaFX 中的复选框单元格工厂 + Tableview