JavaFX:ComboBox-冲突setButtonCell和setPrompText
我使用的是JFoenix库,ComboBox有问题 当我想设置PromtText和setButtonCell时,文本会重复。 我想更改ButtonCell上的字体大小 这是我的密码:JavaFX:ComboBox-冲突setButtonCell和setPrompText,javafx,combobox,Javafx,Combobox,我使用的是JFoenix库,ComboBox有问题 当我想设置PromtText和setButtonCell时,文本会重复。 我想更改ButtonCell上的字体大小 这是我的密码: @FXML private JFXComboBox versionList; @Override public void initialize(URL location, ResourceBundle resources) { versionList.setPromptText("<");
@FXML
private JFXComboBox versionList;
@Override
public void initialize(URL location, ResourceBundle resources) {
versionList.setPromptText("<");
versionList.setButtonCell(new ListCell<String>() {
@Override
protected void updateItem(String version, boolean empty) {
if (empty) {
setText(null);
} else {
setText(version);
setFont(Font.font(15));
}
}
});
}
结果我得到了这个:
或者,如果promt文本选择:
我做错了什么?提前感谢。您忽略了调用updateItem的超类实现。。。在覆盖的updateItem中。。。方法根据设置,这将防止设置项和空属性;因此,我怀疑发生的情况是,单元格仍然有empty==true,因此在不应该的情况下绘制提示文本 正确的实施应该是
@Override
public void initialize(URL location, ResourceBundle resources) {
versionList.setPromptText("<");
versionList.setButtonCell(new ListCell<String>() {
@Override
protected void updateItem(String version, boolean empty) {
super.updateItem(version, empty);
if (empty) {
setText(null);
} else {
setText(version);
setFont(Font.font(15));
}
}
});
}
@文托,你能发一封信吗?它是否也发生在标准组合框中,或者仅仅发生在JFoenix版本中?我用标准组合框尝试了这段代码,一切都很好。我想我会向JFoenix开发者寻求帮助。谢谢你的帮助。@VENTO,这可能会给你带来更多的成功。对于像这样的问题,JFoenix确实没有文档可供使用。请注意,您肯定需要调用super.updateItem。。不过,无论您使用哪个组合框。