|
else
return false;
Для извлечения всего текста мы вызываем метод getText, а для извлечения
выделенного фрагмента - метод getSelectedText.
После записи извлеченного текста метод action перерисовывает окно аплета,
вызывая метод repaint.
Метод paint
После рисования рамки черного цвета вокруг окна аплета метод paint
отобаржает текущее содержимое строки str в нижней части окна:
g.drawString("> " + str, 10, 100);
6 НАСТРОЙКА СИСТЕМЫ LAYOUT MANAGER
В предыдущей главе мы рассказали вам о том, как создавать компоненты и
размещать их в контейнере. Однако предложенный способ размещения компонент в
окне контейнера едва ли можно назвать удобным, так как заранее трудно
предугадать, на каком месте окажется тот или иной орган управления.
К счастью, имеются способы, позволяющие контролировать размещение отдельных
компонент в окне контейнера. И хотя эти способы не позволяют задавать
конкретные координаты и размеры органов управления, использовнные схемы
размещения компонент будут правильно работать на любой аппаратной платформе (не
забывайте, что Java создавалась как средство разработки приложений, способных
выполняться на любой платформе).
В чем трудность создания пользовательского интерфейса для мультиплатформных
систем?
В том, что разработчик приложения никогда не знает характеристики устройства
отображения, установленные у пользователя. Он, в частности, не может заранее
знать разрешение монитора, размер системного шрифта и другие характеристики,
необходимые для компоновки диалоговых панелей в терминах абсолютных координат.
Средства пользовательского интерфейса AWT способны динамически измнять
размеры компонент, подгоняя их “по месту” в системе пользователя. В результате
значительно повышается вероятность того что внешний вид диалоговой панели, в
каком она предстанет перед пользователем, будет похож на то, что ожидал
разработчик.
Как мы уже говорили в начале предыдущей главы, расположением компонент
внутри окна контейнера (например, внутри окна аплета) управляет система Layout
Manager. Способ, которым она это делает, весьма непривычен для тех, кто
создавал приложения Windows. Выбор этого способа обоснован необходимостью
обеспечения совместимости с различными компьютерными платформами.
Режимы системы Layout Manager
Прежде чем мы рассмотрим различные режимы компоновки системы Layout Manager,
вспомним, как происходит наследование класса Applet (рис. 6.1).
Рис. 6.1. Наследование класса Applet
Класс Applet наследуется от класса Panel, который, в свою очередь,
наследуется от класса Container и Component. Класс Container пользуется
интерфейсом LayoutManager, что позволяет выбирать
|
|