我正在阅读TextField的文档,我遇到了一个名为prefColumnCount的属性。据我所知,这个属性控制文本字段的大小,但我无法找到明确的答案,谷歌搜索没有产生任何结果。什么是文本栏?他们是如何衡量的?有什么不明显的我应该知道吗?
答案 0 :(得分:3)
在TextFieldSkin
中,您可以使用以下属性找到此代码段:
@Override
protected double computePrefWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset) {
TextField textField = getSkinnable();
double characterWidth = fontMetrics.get().computeStringWidth("W");
int columnCount = textField.getPrefColumnCount();
return columnCount * characterWidth + leftInset + rightInset;
}
即。它用于通过将属性的值乘以W
的宽度并添加水平插入来计算首选宽度。