Одержати навики побудови алгоритмів лінійних обчислювальних процесів, навчитися складати алгоритми та програмувати процеси з розгалуженням, циклами, ітераційними циклами за допомогою мови Java. Одержати навички роботи із масивами.
ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
2.1. ОПЕРАТОРИ МОВИ JAVA
Графічна бібліотека AWT пропонує більше двадцати готових компонентів. Вони показані на рис. 8.2. Найбільш часто використовуються підкласи класу Component: класи Button, Canvas, Checkbox, Choice, Container, Label, List, Scrollbar, TextArea, TextField, Panel, ScrollPane, Window, Dialog, FileDialog, Frame. Ще одна група компонентів — це компоненти меню — класи Menuitem, MenuBar, Menu, PopupMenu, CheckboxMenuItem. Ми розглянемо їх в уроці13. Забігаючи наперед, для кожного компонента перечислимо події, які в ньому відбуваються. Обробку подій ми розберемо в уроці12. Почнемо вивчати ці компоненти від простих компонентів до складних і від найбільш часто використовуваних до використовуваних рідше. Але спочатку подивимося на те спільне, що єсть у всіх цих компонентах, а саме клас Сomponent.
Класс Component
Клас Сomponent — центр бібліотеки AWT — дуже великий і володіє багатьма можливостями. В ньому пять статичних констант, визначаючих розміщення компонента всередині простору, виділеного для компонента у вміщаючому його контейнері: BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT, і близько сотні методів. Більшість методів— це методи доступу getxxx(), isxxx(), setxxx(). Вивчати їх немає рації, треба просто подивитися, як вони використовуються в підкласах.
Конструктор класу недоступний — він захищений (protected), тому, що клас Сomponent абстрактний, він не може використовуватися сам по собі, використовуються лише його підкласи. Компонент завжди займає прямокутну область зі сторонами, паралельними сторонам екрана і в кожний момент часу має певні розміри, вимірювані в пікселях, які можна узнати методом getSize(), повертаючим обєкт класу Dimension, або цілочисельними методами getHeight() і getWidth(), повертаючими висоту і ширину прямокутника. Новий розмір компонента можна установити із програми методами setSize(Dimension d) або setSize(int width, int height), якщо це дозволяє менеджер розміщення контейнера, що містить компонент. У компонента єсть оптимальний розмір, при якому він виглядає найбільш пропорціонально. Його можна одержати методом getPreferredSize() у вигляді обєкта Dimension.
Компонент має мінимальний і максимальний розміри. Їх повертають методи getMinimumSize() і getMaximumSize() у вигляді обєкта Dimension. В компоненті єсть система координат. Її початок - точка з координатами (0, 0) - знаходиться в лівому верхньому куті компонента, вісь Ох іде вправо, вісь Оу - вниз, координатні точки розташовані між пікселями. В компоненті зберігаються координати його лівого верхнього кута в системі координат вміщаючого його контейнера. Їх можна узнати методами getLocation(), а зменити — методами setLocation(), перемістивши компонент в контейнері, якщо це дозволить менеджер розміщення компонентів.
Можна вияснити зразу і положення, і розмір прямокутної області компонента методом getBounds(), повертаючим обєкт класу Rectangle, і змінити разом і положення, і розмір компонента методами setBounds(), якщо це дозволить зробити менеджер розміщення. Компонент може бути недоступним для дій користувача, тоді він виділяється на екрані світло-сірим кольором. Доступність компонента можна перевірити логічним методом isEnabІed(), а змінити— методом setEnabled(boolean enable). Для багатьох компонентів визначається графічний контекст — обєкт класу Graphics, — який керується методом paint(), описаним в попередньому уроці, і який можна одержати методом getGraphics().
В контексті єсть поточний колір і колір фону — обєкти класу Сolor. Колір фону можна одержати методом getBackground(), а змінити— методом setBackground(Color color). Поточний колір можна одержати методом getForeground(), а змінити - методом setForeground(Color color). В контексті єсть шрифт — обєкт класу Font, що повертається методом getFont() і змінюється методом setFont(Font font). В компоненті визначається локаль — обєкт класу Locale. Його можна одержати методом getLocale(), змінити - методом setLocale(Locale locale).
В компоненті існує курсор, що показує положення миші, — обєкт класу Cursor. Його можна одержати методом getСursor(), змінюється форма курсора у "важких" компонентах за допомогою метода setСursor(Cursor cursor). Зупинимося на цих класах детальніше.