Читайте также:
|
|
новый объем видимой части полосы прокрутки.
Следующим компонентом будет ScrolIPane. Официальное наименование класса— java.awt.scroiipane. Это контейнер для отображения какого-либо объекта, рисунка, текста, и т. п. Весьма полезный кубик нашего конструктора. Позволяет практически одним вызовом метода с отображения текста переключиться на отображение рисунка, а потом на отображение какого-либо дерева. Обладает полосами прокрутки, отображение которых может проводиться в трех режимах: появляться только в том случае, если они в данный момент необходимы, и исчезать, когда нужда в них отпала, находиться на нашем компоненте всегда, и полностью отсутствовать. Каждому из этих режимов соответствует константа типа int. Константа scrollbars_as_needed соответствует режиму "умных" полос прокрутки, т. е. появляющихся только в случае необходимости. Константа scrollbars_always указывает на постоянное наличие полос прокрутки, а scrollbarsjmeve.r указывает на режим их отсутствия.
Имеются также два конструктора. Конструктор Scrollpaneo создает обычный контейнер для отображения каких-либо объектов. Вторая модификация — Scrollpane (int) — позволяет при создании контейнера при помощи одной из вышеописанных констант сразу указать режим работы его полос прокрутки, передавая константу в качестве параметра.
О Метод addlmpi:protected final void addlmpi(Component comp. Object constraints, int index). Основной метод для данного компонента. В параметр comp помещается тот компонент, который должен быть отображен. В результате Scrollpane создает так называемый "дочерний компонент" для размещения его в себе. Параметр constraints не используется, а параметр index указывает позицию этого "дочернего компонента", которая должна быть меньше или равна нулю. Если на момент применения этого метода у контейнера ScrollPane уже существовал другой F "дочерний компонент", он уничтожается и заменяется новым. |
О Метод doLayout: public void doLayout (). Выравнивает отображение j "дочернего компонента" до оптимальных размеров. '.
П Метод getHAdjustable: public Adjustable getHAdjustable (). Возвра- :
шает значение типа Adjustable, которое характеризует состояние гори- :
зонтальной полосы прокрутки на момент вызова этого метода. Если режим отображения полос прокрутки установлен таким образом, чтобы } никогда их не показывать, метод возвращает null.
О Метод getHScrollbarHeight: public int getHScrollBar(). Возвращает высоту в пикселах горизонтальной полосы прокрутки независимо от того, видна она в данный момент или нет.
О Метод getScrollbarDisplayPolicy: public int
getScrollbarDisplayPolicyt). Возвращает константу целочисленного типа, указывающую на то, какой режим отображения линеек прокрутки используется в компоненте ScrollPane.
О Метод getScrollPosition: public Point 'getScrollPosition(). Возвращает текущую позицию просмотра внутри отображаемого объекта. Счи тается, что сам объект расположен в позиции (0,0). Метод удобно использовать для управления линейками прокрутки. Возвращает значение типа point.
О Метод getVAdjustable: public Adjustable getVAdjustableО. Действует подобно методу getHAdjustable, но отображает состояние вертикальной полосы прокрутки.
О Метод getViewportSize: public Dimension getViewportSize(). Возвращает размер окна отображения контейнера ScrollPane, имеющее тип Dimension. Этот тип характеризуется переменными height и width типа int, определяющими высоту и ширину объекта, соответственно.
О Метод getVScrollbarWidth: public int getVScrollbarWidth(). Возвращает ширину вертикальной полосы прокрутки в пикселах, независимо от наличия ее в данный момент.
П Метод printComponents; public void printComponents(Graphics g). Отображает в контейнере ScrollPane компонент, чье представление в типе Graphics было передано в качестве параметра.
C"J Метод aetScrollPosition: public void setScrollPosition(int x, int у). Устанавливает принудительно новую позицию просмотра для отображаемого компонента. Если указана недопустимая позиция, то компонент позиционируется на ближайшее допустимое положение. Допустимые положения лежат в прямоугольнике, левый верхний угол которого имеет координаты (0,0), ширина равна разнице между шириной самого отображаемого объекта и шириной окна просмотра, а высота — разнице между высотой отображаемого объекта и высотой окна просмотра. Есть также и
ВТОраЯ модификация ЭТОГО метода: public void setScrollPosition
(point p), в которой в качестве параметра передается точка. Остальное без изменений.
В рамках страницы AWT нам осталось рассмотреть два компонента, связанных с отображением и редактированием текста. Рассмотрим сначала компонент TextArea. Полное наименование класса — java.awt.TextArea. Предназначен для отображения текстовой информации. Естественно, по большей части работа с текстом требует от компонента наличия полос прокрутки. У компонента TextArea есть четыре константы целочисленного типа, ответственные за отображение полос прокрутки. Использование константы scrollbars_both позволяет установить обе полосы прокрутки. Константы
SCROLLBARS_HORyZONTAL_ONLY И SCROLLBARS_VERTICAL_ONLY устанавливают
либо только горизонтальную, либо только вертикальную полосы прокрутки. И, наконец, если вы твердо уверены в том, что вам эти полосы прокрутки совсем не понадобятся, стоит использовать константу scrollbars_none.
Класс имеет пять конструкторов. Как обычно, самый простой конструктор TextArea () создает ничем не примечательный компонент по умолчанию, для которого также заранее созданы обе полосы прокрутки. Второй вариант — TextArea (int, int) — позволяет создавать область для отображения текста с уже заданным количеством строк и символов в строке для отображаемой области. Первый параметр задает количество строк, а второй — столбцов. Следующий вариант — TextArea (String) — дает возможность создать компонент с заранее указанным текстом для отображения. Как и в первом варианте, присутствуют обе полосы прокрутки. Четвертый вариант— TextArea (String, int, int) — объединяет в себе два предыдущих, т. е. позволяет указывать и отображаемый текст, и границы окна просмотра. По умолчанию присутствуют обе полосы прокрутки. И, наконец, последний вариант конструктора— TextArea (String, int, int, int) — позволяет помимо текста и размеров передавать в последнем параметре константу, указывающую на наличие каких-либо полос прокрутки.
П Метод append: public synchronized void append(String str). Один ИЗ наиболее часто используемых методов. Добавляет строку, переданную как параметр, к тому тексту, который уже находится в окне просмотра.
С") Метод getColumns: public int getColumn5 (). Один ИЗ справочных мето-
дов. В качестве результата выдает количество символов (или столбцов, колонок) в строке для компонента TextArea.
D Метод getMinimumSize: public Dimension getMinimumSize (). В качестве
результата возвращает значение типа Dimension, в котором указывает минимально необходимые размеры для отображения компонента TextArea. Может быть вызван и во втором варианте — public Dimension getMinimumSize(int rows, int columns). В ЭТОМ случае ОН вернет МИ-нимально необходимые размеры для отображения компонента с указанным количеством строк и столбцов, которые были переданы в качестве параметра.
О Метод getpreferredsize, как и предыдущий, существует в двух модификациях: public- Dimension getMinimumSize() И public Dimension getMinimumSize (int rows, int columns). Но В ОТЛИЧИе ОТ Предыдущего
метода выдает предпочтительные размеры для оптимального отображения
Компонента TextArea.
О Метод getRows: public int getRows (). Возвращает количество строк области отображения текста, а не самого текста, на что стоит обратить внимание.
О Метод getScrollbarVisibility: public int getScrollbarVisibility().
Возвращает в качестве результата одну из тех целочисленных констант, которые описывают правила отображения линеек прокрутки.
П Метод insert: public synchronized void insert(String str, int pos). Предназначен для вставки определенного текста (параметр str) в позицию, переданную в параметре pos.
О Метод replaceRange: public synchronized void replaceRange(String
3tr, int start, int end). Замещает текст, находящийся между позициями, переданными в качестве параметров start и end на строку, которая была передана в параметре str.
О Метод setColumns: public void setColumns(int columns). Предназначен для принудительной установки количества столбцов для компонента
TextArea.
П Метод setRows: public void setRowstint Rows). Позволяет установить количество строк для отображения в компоненте TextArea.
И теперь мы переходим к последнему компоненту страницы AWT — TextField, т. е. полю для ввода текстовой информации. Полное имя класса — java.awt. TextField. Поле ввода может быть (и обычно бывает) ограничено по размеру. Иногда там может находиться некий текст по умолчанию. Все эти возможности реализуются при помощи четырех конструкторов. Как обычно, первый — TextField о — просто создает данный элемент управления без отличительных особенностей. Второй вариант — TextField (int) — предназначен для создания поля ввода, ограниченного по длине. Ограничение, естественно передается в качестве параметра, задающего длину поля ввода в символах. Есть и третий вариант — TextField (String), который при создании поля ввода помещает в нем значение по умолчанию. А четвертый вариант конструктора — TextField (String, int) — просто совмещает в себе все возможности второго и третьего варианта, т. е. позволяет указывать и строковое значение по умолчанию, и ограничение по длине.
С") Метод echoCharIsSet: pubic boolean echoCharIsSet (). Предназначен
для получения информации о режиме отображения вводимого пользователем текста. Не секрет, что при реализации ввода пароля в текстовое поле ввода необходимо заменять вводимые символы на какие-либо маскировочные символы (обычно это звездочки). В том случае, если все вводимые символы отображаются штатным образом, метод возвращает значение False, а если используется "безопасный" режим ввода, то возвращается True.
П Метод getcoiumns: public int getColumns(). Возвращает количество символов, которые можно ввести в данное поле ввода.
П Метод getEchoChar: public char getEchoChar (). Возвращает СИМВОЛ, используемый для маскировки вводимой информации.
О Метод getMinimumSize: public Dimension getMinimumSize(). Мы уже
встречали этот метод в реализации других классов. Нужно заметить, что и в данном случае он делает все то же, что и раньше, т. е. возвращает значение типа Dimension, в котором указываются минимально необходимые размеры области для отображения этого элемента управления. Имеет и вторую реализацию: public Dimension getMinimumSize(int columns), позволяющую указать эти самые минимальные размеры для поля ввода текста с ограничением на количество отображаемых символов.
О Метод getPreferredSize: public Dimension getPreferredSize(). Как водится, рассматривается сразу после метода getMinimumsize. Также существует в двух модификациях, но возвращает уже оптимальные, рекомендуемые размеры для поля ввода.
["Ч Метод setColumns: public void setColumns(int columns). Позволяет указать количество символов в поле текстового ввода.
П Метод setEchoChar: public void setechoChar (char с). Указывает на ТО, какой символ будет отображаться при "секретном" вводе информации в поле.
На этом мы завершаем рассмотрение компонента TextField, а вместе с ним завершаем и обзор всей страницы компонентов AWT. Теперь, когда мы уже знаем, как реализованы основные компоненты, разобраться с остальными будет намного легче.
Обработка событий
Как мы уже говорили, в Java события не встроены в отдельные компоненты. Они принадлежат отдельному пакету классов. Так, каждому компоненту из AWT соответствует несколько событий из AWT. Все события находятся в пакете java.awt.event. Пакет состоит из нескольких классов, объединяющих одноплановые события, причем каждое отдельное событие реализовано в виде метода (!) этого класса. Приступим к их рассмотрению.
Первый интересующий нас класс— java.awt. event. ActionListener. Содержит в себе единственное событие с именем actionperformed: public abstract void actionPerformed(ActionEvent e). Сам класс Предназначен для отработки событий, возникающих, когда один из компонентов начинает выполнять какое-либо свое основное действие. Например, для кнопки это будет ее нажатие. Соответственно, само событие actionperformed будет инициироваться каждый раз, когда такое действие будет происходить.
Следующий класс— java.awt. event. AdjustmentListener. Реализует интерфейс для получения данных об исправлении какого-либо объекта. Также
СОДерЖИТ ОДИН Метод (ОДНО событие) — adjustmentValueChanged: public abstract void adjustmentValueChanged(AdjustmentEvent e).Событие наступает, когда какое-либо значение (свойство) данного объекта подверглось изменениям.
Дата добавления: 2015-09-11; просмотров: 24 | Поможем написать вашу работу | Нарушение авторских прав |