Java SWT очистить заголовки таблицы - PullRequest
0 голосов
/ 29 августа 2018

Я работаю над SWT GUI и пытаюсь создать кнопку, которая при нажатии очищает все данные таблицы и заголовки.

table.removeAll();

Эта команда не работает должным образом, потому что она удаляет только данные внутри, и мне тоже нужно удалить заголовки таблиц.

Есть ли решение?

РЕДАКТИРОВАТЬ: после того, как код для очистки заголовка сработал, если я пытаюсь добавить новый файл с данными, заголовок перейти к следующему пункту. почему если оно пустое? (ArrayLists, который содержит очищенные имена заголовков).

Первое изображение - это первый загруженный файл, после нажатия кнопки «Пуск» данные отображаются в таблице: enter image description here

Второе изображение после того, как таблица очистила все данные, нажав на другую кнопку: enter image description here

Третье изображение после загрузки нового файла и нажатия кнопки «Пуск»: enter image description here

РЕДАКТИРОВАТЬ: Набор заголовков

            tableConfigurationSystemColumnTools.add("Parameter Name");
            for (String str : tableSystemColumn) {
                String[] a = str.split("PCM");
                tableConfigurationSystemColumnTools.add(a[0].trim());
            }
                for (int loopIndexSystemColumnTools = 0; 
                loopIndexSystemColumnTools < tableConfigurationSystemColumnTools.size(); loopIndexSystemColumnTools++) {
                TableColumn column = new TableColumn(tableConfigurationSystem, SWT.NULL);
                column.setWidth(100);
                column.setText(tableConfigurationSystemColumnTools.get(loopIndexSystemColumnTools));
              }
              for (int loopIndexSystemColumnTools = 0; loopIndexSystemColumnTools < tableConfigurationSystemColumnTools.size(); loopIndexSystemColumnTools++) {
                  tableConfigurationSystem.getColumn(loopIndexSystemColumnTools).pack();
              }

РЕДАКТИРОВАТЬ: Я нашел ответ, посмотрите на мой комментарий.

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Я нашел ответ - в цикле «for», который создает TableColumn, я добавил «index»:

TableColumn column = new TableColumn(tableConfigurationSystem, SWT.NONE, loopIndexSystemColumnTools);

это работает.

Спасибо, ребята.

0 голосов
/ 29 августа 2018
button.addSelectionListener(new SelectionAdapter() {
    @Override
    public void widgetSelected(SelectionEvent e) {
        table.removeAll();
        TableColumn[] columns = table.getColumns();
        for (int i = 0; i < columns.length; i++) {
            columns[i].setText("");
        }
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...