- •Обозначения и сокращения
- •Введение
- •1 Простое SWT приложение
- •1.1 Создание приложения
- •1.2 Запуск SWT программы из командной строки
- •1.3 Структура приложения
- •1.4 Слушатели событий
- •1.5 Работа с подпроцессами
- •1.5.1 Диспетчеризация внутренних событий
- •1.5.2 Нить пользовательского интерфейса SWT
- •1.5.3 Выполнение кода за пределами нити UI
- •1.5.4 Рабочая среда и нити
- •2 Элементы управления
- •2.1 Стандартные виджеты
- •2.2 Пользовательские виджеты
- •2.3 Класс Label
- •2.3.1 Стили
- •2.3.2 Текст
- •2.3.3 Изображение
- •2.3.4 Разделители
- •2.3.5 Выравнивание
- •2.3.6 Перенос слов текста
- •2.3.7 Пример использования этикеток
- •2.4 Класс Text
- •2.5 Класс Button
- •2.5.1 Стили
- •2.5.2 Текст
- •2.5.3 Изображение
- •2.5.4 Выравнивание
- •2.5.5 Push Button
- •2.5.6 Toggle Button
- •2.5.7 Check Box
- •2.5.8 Radio Button
- •2.5.9 Selection (выбор)
- •2.5.10 Указание используемой по умолчанию кнопки
- •2.6 Класс List
- •2.6.1 Стили
- •2.6.2. Добавление элементов в список
- •2.6.3. Удаление элементов из списка
- •2.6.4 Получение элементов списка
- •2.6.5 Настройка значений элементов
- •2.6.6 Поиск элементов
- •2.6.7 Выбор элементов списка
- •2.6.8 Обработка событий списка List
- •2.7 Класс Link
- •2.7.1 Стили
- •2.7.2. Текст
- •2.7.3. Обработчики событий
- •2.8 Класс Table
- •2.9 Класс TableColumn
- •2.10 Класс TableItem
- •2.11 Класс Item
- •2.12 Класс Combo
- •2.13 Класс FileDialog
- •2.14 Класс Menu
- •2.15 Класс MenuItem
- •2.16 Класс MessageBox
- •2.17 Класс TabFolder
- •2.18 Class TabItem
- •3 Макеты
- •3.1 Класс FillLayout
- •3.2 Класс GridLayout
- •3.3 Класс GridData
- •3.4 Класс RowLayout
- •3.5 Класс RowData
- •3.6 Класс FormLayout
- •3.7 Класс FormAttachment
- •3.8 Класс FormData
- •4 Графика
- •4.1 Класс GC
- •4.2 Класс Canvas
- •5 Пакет printing
- •5.1 Класс PrintDialog
- •5.2 Класс Printer
- •5.3 Класс PrinterData
- •6 Пакет events
- •6.1 Класс Event
- •7 Разработка приложений
- •8 Разработка новых компонент
- •9 Дополнительные возможности библиотеки SWG
- •9.1 Компоненты управления
- •9.2 Виджеты
- •9.3 Плоские формы
- •9.4 Линии, точки и ломанные
- •9.5 Класс PathShape
- •10 Анимация
- •10.1 Типы анимации
- •10.2 Анимация во времени
- •10. 3 Поддержка времени
- •10.4 Пример приложения с элементами анимации
- •Список использованных источников
2.8 Класс Table
java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Control
org.eclipse.swt.widgets.Scrollable
org.eclipse.swt.widgets.Composite
org.eclipse.swt.widgets.Table
Объекты этого класса осуществляют интерфейс пользователя таблицы, которая отображает список изображений и строк и обеспечивает подачу уведомления при выборе ее строки (таблица 2.7).
Дочерние строки добавляются к этим объектам как экземпляры класса TableItem. Заметьте, что хотя этот класс является подклассом Composite, нельзя к нему добавлять дочерние элементы управления или устанавливать для него макеты.
Стили являются логической суммой "|" констант, определенных в классе SWT, применимых к объектам этого класса.
SINGLE – для единственного выбора в списке;
MULTI – для множественного выбора в списке; CHECK – для создания колонки check box; FULL_SELECTION – для выбора всей строки в списке;
HIDE_SELECTION – скрывать выделение при потере фокуса ввода; VIRTUAL – допускать виртуальные данные.
Примечание: Только один из стилей SINGLE и MULTI может быть определен. Этот класс не должен иметь подклассов.
Таблица 2.7 – Методы компонентов класса Table
Конструктор
Table(Composite parent, int style) – Создает новый объект этого класса имеющего родителя parent и стиль style, описывающих поведение и вид
Методы
void |
addSelectionListener(SelectionListener listener) – Добавляет |
|
обработчик, который будет извещен когда изменяется выбор |
||
|
||
|
получателя, посылая одно из сообщений определенных в |
|
|
интерфейсе SelectionListener |
|
protected void |
checkSubclass() – Проверяет, что этот класс может быть |
|
подклассом |
||
|
58
void |
clear(int index) – Очищает пункт для заданного относительно |
|
нуля индекса получателя |
||
|
||
|
|
|
void |
clear (int[ ] indices) – Очищает пункт для заданного |
|
относительно нуля массива индексов получателя |
||
|
||
void |
clear (int start, int end) – Очищает пункты получателя между |
|
заданными стартовыми и конечными индексами (включая их) |
||
|
||
void |
clearAll() – Очищает все строки |
|
|
|
|
Point |
computeSize(int wHint, int hHint, boolean changed) – |
|
Возвращает предпочтительный размер получателя |
||
|
||
void |
deselect(int index) – Отменяет выбор пункта для заданного |
|
относительно нуля индекса получателя |
||
|
||
void |
deselect (int[ ] indices) ) – Отменяет выбор пунктов для |
|
заданного относительно нуля массива индексов |
||
|
||
void |
deselect (int start, int end) – Отменяет выбор пунктов для |
|
заданного относительно нуля диапазона индексов |
||
|
||
void |
deselectAll()) – Отменяет выбор всех пунктов |
|
TableColumn |
getColumn(int index) – Возвращает заданную индексом |
|
колонку (относительно нуля) получателя |
||
|
||
int |
getColumnCount() – Возвращает число колонок |
|
int[ ] |
getColumnOrder() – Возвращает массив целых, которые |
|
отображают порядок создания пунктов получателя в порядок |
||
|
||
|
в котором они к настоящему времени отображаются |
|
TableColumn[ |
getColumns() – Возвращает массив TableColumns колонок |
|
] |
||
|
||
int |
getGridLineWidth() – Возвращает ширину в пикселях линии |
|
сетки |
||
|
||
int |
getHeaderHeight() – Возвращает высоту заголовка получателя |
|
|
|
|
boolean |
getHeaderVisible() – Возвращается верно, если заголовок |
|
получателя — видимый, и ложный в противном случае |
||
|
||
TableItem |
getItem(int index) – Возвращает пункт с заданным индексом |
|
на получателе |
||
|
||
TableItem |
getItem(Point point) – Возвращает пункт в заданной точке или |
|
null, если пункт не существует |
||
|
||
|
59 |
int |
getItemCount() – Возвращает количество пунктов |
|
int |
getItemHeight() – Возвращает высоту области, которая |
|
должна быть использована, чтобы отображать один пункт |
||
|
||
TableItem[ ] |
getItems() – Возвращает массив (возможно пустой) TableItems |
|
пунктов |
||
|
||
boolean |
getLinesVisible() – Возвращается верно если линии видимые |
|
и ложь в противном случае |
||
|
||
TableItem[ ] |
getSelection() – Возвращает массив (возможно пустой) |
|
TableItems выбранных пунктов |
||
|
||
int |
getSelectionCount() – Возвращает число выбранных пунктов |
|
|
|
|
int |
getSelectionIndex() – Возвращает индекс выбранного пункта |
|
|
|
|
int[ ] |
getSelectionIndices() – Возвращает массив индексов |
|
выбранных пунктов |
||
|
||
int |
getTopIndex() – Возвращает индекс пункта, который — к |
|
настоящему времени наверху получателя |
||
|
||
int |
indexOf(TableColumn column) – Ищет индекс колонки |
|
int |
indexOf (TableItem item) – Ищет индекс строки |
|
boolean |
isSelected(int index) – Возвращается верно если пункт выбран |
|
и ложь в противном случае |
||
|
||
void |
remove(int index) – Удаляет пункт по заданному индексу |
|
void |
remove (int[ ] indices) ) – Удаляет пункты по заданному |
|
массиву индексов |
||
|
||
void |
remove (int start, int end) – Удаляет пункты по заданному |
|
диапазону индексов |
||
|
||
void |
removeAll() – Удаляет все пункты |
|
void |
removeSelectionListener(SelectionListener listener) – Удаляет |
|
обработчик изменения выбора получателя |
||
|
||
void |
select(int index) – Выбирается пункт по индексу |
|
void |
select (int[ ] indices) – Выбираются пункты по массиву |
|
индексов |
||
|
||
void |
select (int start, int end) – Выбираются пункты по диапазону |
|
индексов |
||
|
60
void |
selectAll() – Выбираются все пункты |
|
void |
setColumnOrder(int[ ] order) – Установить порядок |
|
отображения колонок |
||
|
||
void |
setFont(Font font) – Установить шрифт. Если null, то |
|
использовать шрифт по умолчанию |
||
|
||
void |
setHeaderVisible(boolean show) – Установить видимость |
|
заголовков |
||
|
||
void |
setItemCount(int count) – Установить число строк в таблице |
|
void |
setLinesVisible(boolean show) – Установить видимость линий |
|
void |
setRedraw(boolean redraw) – Если false, то игнорировать все |
|
последующие операции |
||
|
||
void |
setSelection(int index) – Установить выбор строки по индексу |
|
|
|
|
void |
setSelection(int[ ] indices) – Установить выбор строк по |
|
массиву индексов |
||
|
||
void |
setSelection(int start, int end) – Установить выбор строк по |
|
диапазону индексов |
||
|
||
void |
setSelection(TableItem[ ] items) – Установить выбор по |
|
массиву строк |
||
|
||
void |
setTopIndex(int index) – Устанавливает индекс пункта, |
|
который к настоящему времени на верху получателя |
||
|
||
void |
showColumn(TableColumn column) – Показать колонку |
|
void |
showItem(TableItem item) – Показать строку |
|
|
|
|
void |
showSelection()– Показать выбранные |
|
|
|
|
|
|
Пример (рисунок 2.7).
Display display = new Display ();
Shell shell = new Shell (display);
Table table = new Table (shell, SWT.MULTI | SWT.BORDER |
SWT.FULL_SELECTION); table.setLinesVisible (true); table.setHeaderVisible (true);
String[ ] titles = {" ", "C", "!", "Description", "Resource",
"In Folder", "Location"};
for (int i=0; i<titles.length; i++) {
TableColumn column = new TableColumn (table, SWT.NONE);
61