SWT: таблица с функциями копирования / вставки - PullRequest
3 голосов
/ 19 сентября 2011

Это может быть действительно глупый вопрос, но я просто не мог найти ответ где-нибудь, есть ли возможность для пользователя, чтобы иметь возможность выделить строки в таблице SWT и либо ctrl + c или щелкните правой кнопкой мыши + c , чтобы скопировать значения?

Я бы особенно хотел иметь возможность скопировать в лист Excel.

Вот как я создаю таблицу,

Table aTable = new Table(parent, SWT.SINGLE | SWT.BORDER
                | SWT.FULL_SELECTION);
aTable.setHeaderVisible(true);
aTable.setLinesVisible(true);

aTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

Я видел информацию об этом с помощью JTable, но ничего с SWT. Если JTable - мой единственный вариант, то в чем были бы недостатки / преимущества его использования?

1 Ответ

5 голосов
/ 21 сентября 2011

Вы можете легко закодировать его.

Добавьте ключевой слушатель к своей таблице и слушайте клавиши Ctrl + C . Когда нажата комбинация Ctrl + C , получите выделение из таблицы, извлеките текст из каждого элемента TableItems и сформируйте строку с разделителями-табуляцией-полями / строками-разделителями-строками, содержащую строку данные. Затем просто поместите его в буфер обмена (см. org.eclipse.swt.dnd.Clipboard#setContents, используйте тип данных TextTransfer).

Вот и все - ваш результат будет вставлен в Excel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...