
- •Обозначения и сокращения
- •Введение
- •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.3.6 Перенос слов текста
Если при создании объекта Label была указан стиль SWT.WRAP, то текст будет разбиваться (переноситься) на строки для более полного заполнения доступного пространства. Действие стиля SWT.WRAP определяется правилами переноса в операционной системе и зависит от выбранного языка (локали).
Замечание: Для формирования принудительного, вне зависимости от стиля SWT.WRAP, переноса строки можно использовать символ перевода строки \n.
2.3.7 Пример использования этикеток
Пример использования класса Label с различными масками стилей package by.bs.swt;
...
public void testLabel() {
Display display = new Display(); Shell shell = new Shell(display); shell.setText("Label test");
new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL); Label lblHello = new Label(shell, SWT.NONE); lblHello.setText("Simple Label");
new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL); shell.setLayout(new GridLayout());
Label lblDuke = new Label(shell, SWT.NONE); lblDuke.setImage(new Image(Display.getCurrent(), getClass()
.getResourceAsStream("/by/bs/swt/images/duke_wavin
g.gif")));
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) display.sleep();
}
shell.dispose();
display.dispose();
}
2.4 Класс Text
java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Control
org.eclipse.swt.widgets.Scrollable
org.eclipse.swt.widgets.Text
36

public class Text extends Scrollable
Объекты класса Text (таблица 2.4) являются интерфейсом пользователя, который позволяет вводить и редактировать текст.
Стили: CENTER, LEFT, MULTI, PASSWORD, SINGLE, RIGHT, READ_ONLY, WRAP
События: DefaultSelection, Modify, Verify
Примечание: Только один из стилей MULTI и SINGLE может быть определен.
Таблица 2.4 – Поля и методы компонентов класса Text
|
|
Поля |
static |
DELIMITER |
– Разделитель используется многострочными |
String |
текстовыми окнами. |
|
static int |
LIMIT – Максимальное количество символов, которые могут быть |
|
|
введены. |
|
|
|
Конструктор |
Text(Composite parent, int style) – Создает новый объект этого класса заданного стиля в окне родителя.
Методы
void |
addModifyListener(ModifyListener listener) – Добавляет обработчик, |
|
который будет вызван, когда текст модифицирован, посылая ему |
||
|
||
|
одно из сообщений, определенное в интерфейсе ModifyListener. |
|
|
|
|
void |
addSelectionListener(SelectionListener listener) – Добавляет |
|
обработчик, который будет вызван, когда элемент выбран, посылая |
||
|
||
|
ему одно из сообщений, определенное в интерфейсе |
|
|
SelectionListener. |
|
void |
addVerifyListener(VerifyListener listener) – Добавляет обработчик, |
|
который будет извещен, когда текст получателя проверен, посылая |
||
|
||
|
этому одно из сообщений, определенное в интерфейсе |
|
|
VerifyListener. |
|
void |
append(String string) – Добавляет строку. |
|
void |
clearSelection() – Очищает выбранное. |
37

Point |
computeSize(int wHint, int hHint, boolean changed) – Возвращает |
|
предпочтительный размер. |
||
|
||
|
|
|
Rectangle |
computeTrim(int x, int y, int width, int height) – Желаемая область |
|
|
клиента (как задано аргументами), возвращает прямоугольник |
|
|
bounding, который требуется. |
|
void |
copy() – Копирует выбранный текст. |
|
|
|
|
void |
cut() – Вырезает выбранный текст. |
|
|
|
|
int |
getBorderWidth() – Возвращает ширину границы приемника. |
|
int |
getCaretLineNumber() – Возвращает номер строк где курсор. |
|
Point |
getCaretLocation() – Возвращает точку позиции курсора |
|
относительно своего родителя (или дисплея, если родитель null). |
||
|
||
int |
getCaretPosition() – Возвращает символьную позицию курсора. |
|
|
|
|
int |
getCharCount() – Возвращает количество символов. |
|
boolean |
getDoubleClickEnabled() – Возвращает флаг разрешения двойного |
|
щелчка. |
||
|
||
char |
getEchoChar() – Возвращает эха символа. |
|
|
|
|
boolean |
getEditable() Возвращает состояние редактируемости. |
|
|
|
|
int |
getLineCount() – Возвращает количество строк. |
|
String |
getLineDelimiter() – Возвращает строку разделителя. |
|
int |
getLineHeight() – Возвращает высоту строки. |
|
int |
getOrientation() – Возвращает ориентацию получателя, одну из |
|
констант SWT.LEFT_TO_RIGHT или SWT.RIGHT_TO_LEFT. |
||
|
||
Point |
getSelection() – Возвращает выбранные символы. |
|
int |
getSelectionCount() – Возвращает количество выбранных символов. |
|
String |
getSelectionText() – Получает выбранный текст, или пустую строку |
|
если нет текущего выбора. |
||
|
||
int |
getTabs() – Возвращает количество табуляций.. |
|
|
|
|
String |
getText() – Возвращает текст виджета. |
38

String |
getText(int start, int end) – Возвращает диапазон текста. |
|
int |
getTextLimit() – Возвращает максимальное количество символов, |
|
которые получатель способен удерживать. |
||
|
||
int |
getTopIndex() – Возвращает индекс строки (относительно нуля), |
|
которая в настоящее время наверху получателя. |
||
|
||
int |
getTopPixel() – Возвращает верхний пиксель. |
|
void |
insert(String string) – Вставляет строку. |
|
|
|
|
void |
paste() –Вставляет текста из буфера. |
|
|
|
|
void |
removeModifyListener(ModifyListener listener) – Удаляет обработчик |
|
модификации текста. |
||
|
||
void |
removeSelectionListener(SelectionListener listener) – Удаляет |
|
обработчик выбора текста. |
||
|
||
void |
removeVerifyListener(VerifyListener listener) – Удаляет обработчик |
|
проверки текста. |
||
|
||
void |
selectAll() – Выбирается весь текст на получателе. |
|
|
|
|
void |
setDoubleClickEnabled(boolean doubleClick) – Устанавливает флаг |
|
разрешения двойного щелчка. |
||
|
||
void |
setEchoChar(char echo) – Устанавливает эхо символов. |
|
void |
setEditable(boolean editable) – Устанавливает состояние |
|
редактирования. |
||
|
||
void |
setFont(Font font) – Устанавливает шрифт, который использует |
|
получатель или шрифт по умолчанию если аргумент null. |
||
|
||
void |
setOrientation(int orientation) – Устанавливает ориентацию |
|
получателя, которая должна быть одной из констант |
||
|
||
|
SWT.LEFT_TO_RIGHT или SWT.RIGHT_TO_LEFT. |
|
|
|
|
void |
setRedraw(boolean redraw) – Если аргумент является ложью, |
|
вызывает игнорирование последующих операций рисования. |
||
|
||
void |
setSelection(int start) – Устанавливает выбор. |
|
void |
setSelection(int start, int end) – Устанавливает выбор диапазоном |
|
определенным стартовым и конечным индексами. |
||
|
||
void |
setSelection(Point selection) – Устанавливает выбор дипазоном, |
|
определенным данной точкой, где x координата представляет |
||
|
||
|
стартовый индекс и y координата представляет конечный индекс. |
39