Как я могу добавить серийный номер в мой текущий список, который мне нужно добавить наблюдаемый список в javafx, чтобы отображать в табличном представлении - PullRequest
0 голосов
/ 24 сентября 2018

Это мой код файла fxml, который отображает некоторые критерии поиска и затем просмотр таблицы

<Pane xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.medplus.posoffline.gui.ReturnsPickListController">
   <children>
      <Pane prefHeight="600.0" prefWidth="800.0">
         <children>
            <Label layoutX="5.0" layoutY="15.0" text="RequestId" />
            <TextField fx:id="requestId" layoutX="75.0" layoutY="15.0" prefWidth="140.0" />
            <Label layoutX="245.0" layoutY="15.0" text="Status" />
            <ComboBox fx:id="returnStatusComb" layoutX="295.0" layoutY="15.0" prefWidth="140.0">
            </ComboBox>
            <Label layoutX="470.0" layoutY="15.0" text="Type" />
            <ComboBox fx:id="returnTypeComb" layoutX="510.0" layoutY="15.0" prefWidth="140.0">
            </ComboBox>
            <Button layoutX="598.0" layoutY="60.0" mnemonicParsing="false" onAction="#searcReturnDetailsfroPickList" text="Search" />
            <TableView fx:id="tableView" layoutY="92.0" prefHeight="500.0" prefWidth="800.0">
              <columns>
                <TableColumn fx:id="requestIds" minWidth="160.0" prefWidth="75.0" text="ReqId" />
                <TableColumn fx:id="status" minWidth="160.0" prefWidth="75.0" text="Status" />
                  <TableColumn fx:id="type" minWidth="160.0" prefWidth="75.0" text="Type" />
                  <TableColumn fx:id="dateCreated" minWidth="160.0" prefWidth="75.0" text="DateCreated" />
                  <TableColumn fx:id="showDetailsBtn" minWidth="160.0" prefWidth="75.0" text="Action" />
              </columns>
            </TableView>
         </children>
      </Pane>
   </children>
</Pane>
if(UtilValidate.isNotEmpty(returnRequests)) {
    observableProductList.addAll(returnRequests);
    requestIds.setCellValueFactory(new PropertyValueFactory<ReturnRequest, Long>("requestId"));
    status.setCellValueFactory(new PropertyValueFactory<ReturnRequest, ReturnRequestType>("status"));
    type.setCellValueFactory(new PropertyValueFactory<ReturnRequest, ReturnRequestStatus>("type"));
    dateCreated.setCellValueFactory(new PropertyValueFactory<ReturnRequest, Date>("dateCreated"));

    tableView.setItems(observableProductList);
}else {

    alert.setTitle("Info");
    alert.setContentText("No Data found");

    alert.showAndWait();

}
clearData();

Я хочу добавить серийные номера в список, чтобы показать, сколько записей было отображено в моей таблице..

Теперь я могу отлично отображать только данные в таблице. Я просто знаю, сколько записей было отображено, показывая серийный номер, который какой-либо метод в javafx может отображать в соответствии с их индексом в списке?

или любое другое альтернативное решение, дайте мне знать, пожалуйста

Заранее спасибо

1 Ответ

0 голосов
/ 24 сентября 2018

Если вы просто хотите отобразить индекс в списке items для TableView в TableCell, я рекомендую использовать для этой цели специальную реализацию TableCell:

public static <T> Callback<TableColumn<T, Void>, TableCell<T, Void>> indexCellFactory() {
    return t -> new TableCell<T, Void>() {

        @Override
        public void updateIndex(int i) {
            super.updateIndex(i);
            setText(isEmpty() ? "" : Integer.toString(i));
        }

    };
}
TableColumn<MyItem, Void> indexColumn = new TableColumn<>("Row index");
indexColumn.setCellFactory(indexCellFactory());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...