Сравнение ячеек таблицы Java SWT

Я работаю над GUI с SWT. Программное обеспечение получает текстовый файл и помещает все данные в таблицу. Можно ли пробегать каждую ячейку подряд, чтобы сравнить ячейки? и бегите по каждой строке в таблице, чтобы сделать это.

Я не могу понять, как, если у меня есть только .getColumnCount()

и еще: можно ли выделить разные ячейки?

РЕДАКТИРОВАТЬ:

                        for (int loopIndexPM1ColumnTools = 0; loopIndexPM1ColumnTools < tableConfigurationSystemColumnLP.size(); loopIndexPM1ColumnTools++) {
                        TableColumn column = new TableColumn(tableConfigurationLP, SWT.NONE, loopIndexPM1ColumnTools);
                        column.setWidth(100);
                        column.setText(tableConfigurationSystemColumnLP.get(loopIndexPM1ColumnTools));
                      }

                    /*
                     * Loop for adding items to each column in CE-LP Tab
                     */
                      for (int loopIndexPM1ColumnTools = 0; loopIndexPM1ColumnTools < CE_LP_Parameter.size(); loopIndexPM1ColumnTools++) {
                        TableItem item = new TableItem(tableConfigurationLP, SWT.NONE);
                        item.setText(0, CE_LP_Parameter.get(loopIndexPM1ColumnTools));
                        item.setText(1, CE_LP1_Value.get(loopIndexPM1ColumnTools));
                        item.setText(2, CE_LP2_Value.get(loopIndexPM1ColumnTools));
                        item.setText(3, CE_LP3_Value.get(loopIndexPM1ColumnTools));

                      }

                      for (int loopIndexPM1ColumnTools = 0; loopIndexPM1ColumnTools < tableConfigurationSystemColumnLP.size(); loopIndexPM1ColumnTools++) {
                          tableConfigurationLP.getColumn(loopIndexPM1ColumnTools).pack();
                      }

РЕДАКТИРОВАТЬ:

                          int tbl_clm = tableConfigurationLP.getColumnCount();
                      int tbl_rows = tableConfigurationLP.getItemCount();
                      for(int i=0;i<tbl_clm;i++) {
                          for(int x=0;x<tbl_rows;x++) {
                              System.out.println(tableConfigurationLP.getColumn(i).getText());
                          }
                      }

1 ответ

Решение

Table имеет

  • getItemCount() дать вам количество строк
  • getItem(rowIndex) получить TableItem в ряду rowIndex
  • getItems() получить все TableItems
  • getColumnCount() получить количество столбцов

TableItem имеет

  • getText(colIndex) получить текст столбца colIndex

Так, например:

Table table = .... the table

int rows = table.getItemCount();
int columns = table.getColumnCount();

for (int rowIndex = 0; rowIndex < rows; ++rowIndex) {
   TableItem rowItem = table.getItem(rowIndex);

   for (int colIndex = 0; colIndex < columns; ++colIndex) {
       String colValue = rowItem.getText(colIndex);

       ....
   }
}
Другие вопросы по тегам