Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2013_1 / ООП / Введение_SWG.pdf
Скачиваний:
82
Добавлен:
23.02.2015
Размер:
3.32 Mб
Скачать

public void widgetSelected( org.eclipse.swt.events.SelectionEvent e) {

fireListsChanged();

}

});

2.7 Класс Link

java.lang.Object

org.eclipse.swt.widgets.Widget

org.eclipse.swt.widgets.Control

org.eclipse.swt.widgets.Link

Класс Link предназначен для вывода текста включающего гиперссылки. Экземпляр класса Link в отличие от компонента Label получает фокус ввода при перемещении курсора, например клавишей Tab или при кликании по нему мышкой. Создав, обработчик событий можно организовать обработку выбранного указателя, например, переход на WEB страницу.

Для создания экземпляра класса Link используется следующий конструктор:

public Link (Composite parent, int style)

где parent – обязательный родительский компонент (контейнер), а style это один или несколько стилей определяющий параметры создания класса Link.

2.7.1 Стили

Стили формируют битовую маску по принципу логического «ИЛИ». Для объединения стилей используется символ "|". Базовый класс org.eclipse.swt.widgets.Control предоставляет возможность прорисовки рамки вокруг компонента при указании стиля SWT.BORDER, а так же изменение направления вывода LEFT_TO_RIGHT, RIGHT_TO_LEFT для письма слева направо и справа налево.

2.7.2. Текст

Для задания текста выводимого классом Link используется метод public void setText (String text).

Текст может содержать, как непосредственно текст, так и гиперссылки. Гиперссылки помещаются в теги привязки <a> и </a>. Внутри тегов привязки доступен атрибут href. При выборе гиперссылки в обработчик события передается текст гиперссылки или значение href, если оно указано. Текст может содержать мнемоники и разделители.

56

Пример. Задание текста компонента Link

siteLink = new Link(shell, SWT.NONE); siteLink.setText(

"Код примеров использования SWT компонент\n"

+"можно найти на сайте: "

+"<a href=\"http://forjava.dev.juga.ru\">"

+"http://forjava.dev.juga.ru</a>");

Метод public String getText() возвращает текст или пустую строку, если текст не задавался, или использовалась маска SWT.SEPARATOR.

2.7.3. Обработчики событий

Обработчики предназначены для фиксации и обработки событий компонента Link.

Метод addSelectionListener(SelectionListener listener)

добавляет обработчик в коллекцию, который активизируется при выборе ссылки, где listener — одна из возможных реализаций интерфейса обработчика событий:

widgetSelected – вызывается при изменении выбора (например, выбор ссылки при помощи клавиатуры или мыши).

widgetDefaultSelected – вызывается при выполнении платформозависимой операции по умолчанию. На большинстве платформ это нажатие кнопки <Enter> или двойной клик мыши.

Пример. Слушатель, который обрабатывает выбор ссылки компонента Link (рисунок 2.6)

siteLink.addSelectionListener(

new org.eclipse.swt.events.SelectionAdapter() { public void widgetSelected(

org.eclipse.swt.events.SelectionEvent e) { browser.setUrl(e.text);

}

});

Метод removeSelectionListener(SelectionListener listener)

удаляет ранее созданный обработчик listener из коллекции.

Рисунок 2.6 – Использование класса Link для ссылки на WEB ресурсы

57

Соседние файлы в папке ООП