如何显示textarea javafx的行数

如何显示textarea javafx的行数,javafx,javafx-2,Javafx,Javafx 2,我正在尝试创建一个包含文本区域行数的列表,就像在文本编辑器中一样。我已经使用VBox项添加了TextField ListCell,但是当我在textarea中滚动时,VBox没有这样做。我怎么做?。这是代码的一部分: TextArea areaNueva = new TextArea(); areas.add(numeroTab, areaNueva); areas.get(numeroTab).setStyle("-fx-font:15pt \"Times New Roman\";" + "-

我正在尝试创建一个包含文本区域行数的列表,就像在文本编辑器中一样。我已经使用VBox项添加了TextField ListCell,但是当我在textarea中滚动时,VBox没有这样做。我怎么做?。这是代码的一部分:

TextArea areaNueva = new TextArea();
areas.add(numeroTab, areaNueva);
areas.get(numeroTab).setStyle("-fx-font:15pt \"Times New Roman\";" + "-fx-focus-color:             transparent;");
BorderPane bor = new BorderPane();
ObservableList<TextFieldListCell> tf = FXCollections.observableArrayList();
TextFieldListCell cell = new TextFieldListCell();
VBox b = new VBox();
cell.setPrefSize(20,1);
cell.setFont(Font.font("Times New Roman",11.35));
cell.setText("1");
tf.add(0,cell);
b.getChildren().addAll(tf);
b.setSpacing(-2);
b.setPadding(new Insets(3,0,0,0));
bor.setLeft(b);
bor.setCenter(areaNueva);
Tab tabNuevo = new Tab("Sin Titulo");
tabs.add(numeroTab, tabNuevo);
tabs.get(numeroTab).setClosable(true);
tabs.get(numeroTab).setContent(bor);
textareareanueva=newtextarea();
区域。添加(数字选项卡、区域编号);
区域.get(numeroTab).setStyle(“-fx字体:15pt\”Times New Roman\”;“+”-fx焦点颜色:透明;”);
BorderPane bor=新的BorderPane();
ObservableList tf=FXCollections.observableArrayList();
TextFieldListCell单元格=新的TextFieldListCell();
VBox b=新的VBox();
cell.setPrefSize(20,1);
cell.setFont(Font.Font(“Times New Roman”,11.35));
cell.setText(“1”);
tf.add(0,单元格);
b、 getChildren().addAll(tf);
b、 设置间隔(-2);
b、 设置填充(新插图(3,0,0,0));
博尔·塞特利夫(b);
布尔塞特中心(areaNueva);
Tab tabNuevo=新选项卡(“Sin Titulo”);
tabs.add(numeroTab、tabNuevo);
tabs.get(numeroTab).setClosable(true);
tabs.get(numeroTab.setContent(bor);
通过此操作,我添加了新的行数:

private ArrayList<ObservableList<TextFieldListCell>> lineas = new   ArrayList<ObservableList<TextFieldListCell>>();
String parte = null;
int i = 1;
while ((parte = br.readLine()) != null) {
      areaAUtilizar.appendText(parte + "\n");
      if(i!=1){
        TextFieldListCell c = new TextFieldListCell();
        c.setText(Integer.toString(i));
        c.setFont(Font.font("Times New Roman",11.35));
        c.setPrefSize(20, 13);
        lineas.get(a).add(i-1,c);
        boxes.get(a).getChildren().setAll(lineas.get(a));
      }
      i++;
 }
private ArrayList lineas=new ArrayList();
字符串parte=null;
int i=1;
而((parte=br.readLine())!=null){
areaAUtilizar.appendText(parte+“\n”);
如果(i!=1){
TextFieldListCell c=新的TextFieldListCell();
c、 setText(Integer.toString(i));
c、 setFont(Font.Font(“Times New Roman”,11.35));
c、 setPrefSize(20,13);
线性化得到(a)加上(i-1,c);
getChildren().setAll(lineas.get(a));
}
i++;
}

我通过删除textarea和listview的滚动并将其不透明度设置为0,然后将两者都放在边框窗格中解决了这个问题。在我将滚动条和边框窗格放入滚动窗格之后。为了显示滚动窗格的滚动条,当textarea的行数大于prefheight时,我增加了textarea和listview的高度。

当然,但这在当时对我有帮助