## Графические библиотеки Java - **Abstract Windows Toolkit (AWT)** - поставляется с JDK, каждый компонент AWT имеет свой визуальный компонент (peer) для конкретной ОС - **Swing** - поставляется с JDK, расширяет классы AWT, не зависит от perr-компонентов ОС - **Java 3D API** - трехмерная графика #### Иерархия классов AWT ![Иерархия классов AWT](../Pictures/05_01.%20Иерархия%20классов%20AWT.png) ## Диалоги Диалоговые окна могут быть модальными (фокус на окне, пока не нажата кнопка) или немодальными. | Тип диалогового окна | Описание | | ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | | `INFORMATION_MESSAGE`
![INFORMATION_MESSAGE](../Pictures/05_02.%20INFORMATION_MESSAGE.png) | Диалоговое окно выводит информацию общего назначения со значком соответствующего вида | | `WARNING_MESSAGE`
![WARNING_MESSAGE](../Pictures/05_03.%20WARNING_MESSAGE.png) | Диалоговое окно выводит на экран предупреждающую информацию со значком соответствующего вида | | `QUESTION_MESSAGE`
![QUESTION_MESSAGE](../Pictures/05_04.%20QUESION_MESSAGE.png) | Диалоговое окно вопроса для ввода информации | | `ERROR_MESSAGE`
![ERROR_MESSAGE](../Pictures/05_05.%20ERROR_MESSAGE.png) | Диалоговое окно выводит на экран информацию об ошибке со значком соответствующего вида | | `PLAIN_MESSAGE` | Указывает, что диалоговое окно не принадлежит ни к одному из вышеперечисленных типов. Выводится на экран без стандартного значка | ## Стандартные компоновщики Java 1. Компоновщик **BorderLayout** (полярное размещение) 2. Компоновщик **FlowLayout** (последовательное размещение) 3. Компоновщик **GridLayout** (табличное размещение) 4. Компоновщик **SpringLayout** (относительное размещение) 5. Компоновщик **BoxLayout** (блочное размещение) ## События и "слушатели" | Интерфейсы | Обработчики события | | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `ActionListener` | `actionPerformed(ActionEvent e)` | | `AdjustmentListener` | `adjustmentValueChanged(AdjustmentEvent e)` | | `ComponentListener` | `componentResized(ComponentEvent e)`
`componentMoved(CompomentEvent e)`
`componentShown(ComponentEvent e)`
`componentHidden(ComponentEvent e)` | | `ContainerListener` | `componentAdded(ContainerEvent e)`
`componentRemoved(ContainerEvent e)` | | `FocusListener` | `focusGained(FocusEvent e)`
`focusLost(FocusEvent e)` | | `ItemListener` | `itemStateChanged(itemEvent e)` | | `KeyListener` | `keyPressed(KeyEvent e)`
`keyReleased(KeyEvent e)`
`keyTyped(KeyEvent e)` | | `MouseListener` | `mouseClicked(MouseEvent e)`
`mousePressed(MouseEvent e)`
`mouseReleased(MouseEvent e)`
`mouseEntered(MouseEvent e)`
`mouseExited(MouseEvent e)` | | `MouseMotionListener` | `mouseDragged(MouseEvent e)`
`mouseMoved(MouseEvent e)` | | `TextListener` | `textValueChanged(TextEvent e)` | | `WindowListener` | `windowOpened(WindowEvent e)`
`windowClosing(WindowEvent e)`
`windowClosed(WindowEvent e)`
`windowIconified(WindowEvent e)`
`windowDeiconified(WindowEvent e)`
`windowActivated(WindowEvent e)` | ## Vaadin **Vaadin** в переводе с финского - самка молодого оленя. **Vaadin**: - Интерфейс пользователя - Темы - Источники данных ## Apache Maven **Maven** в переводе с идиша - накопитель знаний. **Apache Maven** - инструмент, который можно использовать для создания и управления любым проектом на основе Java: - Упрощение процесса сборки - Обеспечение единой системы сборки - Предоставление качественной информации о проекте - Поощрение лучших практик разработки