- •§ 1. Основные понятия теории метода сеток
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 11
- •§ 1. Решение интегральных уравнений методом замены интеграла квадратурной суммой
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 7. Искусство расположения
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •§ 2. Решение интегральных уравнений с помощью замены ядра на вырожденное
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •// 2. Поочередно создаются "полосы", на которые
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 8. Вывод вспомогательной информации
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •// 2. Поочередно создаются "полосы", на которые
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 7. Искусство расположения
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •§ 1. Основные понятия теории метода сеток
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 11
- •§ 1. Решение интегральных уравнений методом замены интеграла квадратурной суммой
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Глава 7. Искусство расположения
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •§ 2. Решение интегральных уравнений с помощью замены ядра на вырожденное
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
- •// 2. Поочередно создаются "полосы", на которые
- •Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
Отформатировать текст по стп мгупи. Оформить рисунки и программный кода
В примере есть несколько интересных мест. Во-первых, обратите внимание на то, что метод установки менеджера расположения setLayout() не вызывался, потому что ъокнах JFrame (а также в окнах без рамки JWindow и диалоговых окнах JDialog) расположение BorderLayout применяется по умолчанию. Во-вторых, будьте осторожнее с использованием строк в качестве параметров метода add(). Так легко сделать трудно обнаружи- емую ошибку, в то время как ошибку при использовании констант сразу же обнаружит миилятор. Картина на экране в итоге получается следующая:
Как легко заметить, возможности полярного расположения довольно ограничены. В)ео создано специально для окон, но, тем не менее, иногда может помочь и в более каожных случаях. Об этом мы поговорим немного позднее.
[Последовательное расположение FlowLayout
; Последовательное расположение FlowLayout работает очень просто, но тем не менее Ьсоективно. Оно выкладывает компоненты в контейнер, как пирожки на противень: Вкед направо, сверху вниз, начиная с верхнего левого угла контейнера. Это расположе- Ешя устанавливается по умолчанию в панелях JPsnel. Основным свойством его следует Нризнать то, что компонентам всегда придается предпочтительный размер (например, В^хкк с текстом JLabel соответствует по размерам тексту). Рассмотрим простой пример:
// FlowLayoutSample.java Р// Последовательное расположение
import java.awt.*; import javax.swing.*;
public class FlowLayoutSample extends JFrame {
public FlowLayoutSample() {
super("FlowLayoutSample") ; setSize(400, 200) ;
setDefaultCloseOperation( EXIT_ON_CLOSE );
// устанавливаем последовательное расположение с // выравниванием компонентов по центру setLayout( new FlowLayout( FlowLayout.CENTER ));
// добавляем компоненты add( new JButton("Один")); add( new JButton("Два")); add( new JButton("Три"));
II выводим окно на экран setVisible(true);
1
public static void main(String[] args) {
SwingUtilities.invokeLater( new Runnable() { public void run() { new FlowLayoutSample(); } });
} I
}
Конструктор класса FlowLayout имеет три перегруженные версии: безпараметр: щ с параметрами выравнивания компонентов, с параметрами выравнивания компонент:* и расстояний между ними. В примере использована вторая версия, устанавливающая п>
следовательное расположение по центру.
Запустите программу с примером, и вы увидите, как работает менеджер последс =аг
тельного расположения.
Если места для всех компонентов достаточно, они размещаются горизонтально » ж ] ну строку. Уменьшите горизонтальный размер окна — как только места в одной страж 1 всем компонентам станет мало, лишние перейдут на строку ниже (расстояние межяи* строками и компонентами можно указать в конструкторе). Теперь уменьшайте разма»!
окна по вертикали — вы увидите, что компоненты, не помещающиеся в окно, просто исчезают из поля зрения! Это не какой-то недостаток последовательного расположения, как может показаться на первый взгляд, а только следствие его главного свойства: при последовательном расположении всегда сохраняется предпочтительный размер компонентов. Менеджер FlowLayoutнеизменно работает по такому правилу, и если места в контейнере становится мало, то он просто прячет «лишние» компоненты, а не уменьшает их размеры. Вторым по важности свойством менеджера расположения FlowLayoutследует признать то, что при вызове метода preferredLayoutSize() или minimumLayoutSize(), позволяющего узнать предпочтительный и минимальный размеры контейнера, в котором этот менеджер действует, метод возвращает размер, соответствующей ситуации расположения всех компонентов в одну строку. Это особенно важно при совмещении последовательного расположения с другими вариантами расположения. Вследствие этого свойства менеджеры других вариантов расположения будут стараться найти достаточно места для размещения компонентов в одну строку. Вскоре мы увидим совмещение в действии.
Поэтому использовать последовательное расположение следует только в контейнере, где достаточно места, или там, где контейнеру некуда будет «прятать» свои компоненты (пример мы рассмотрим в следующем разделе). Тем не менее, этот замечательный по своей простоте менеджер расположения очень хорош при организации несложных вариантов расположения.
Табличное расположение GridLayout
Как нетрудно догадаться по названию, менеджер расположения GridLayoutразделяет контейнер на таблицу с ячейками одинакового размера Количество строк и столбцов можно указать в конструкторе, причем существует возможность задать произвольное количество либо строк, либо столбцов (но не одновременно). Все ячейки имеют одинаковый размер.маленькие компоненты растягиваются по всем направлениям, большие компоненты сжимаются. Табличное расположение идеально подходит для ситуаций, где нужно разбить шнтейнер на несколько одинаковых частей с примерно одинаковым по размеру содержимым. В качестве первого примера рассмотрим окно с кнопками различных размеров:
GridLayoutSample.java // Табличное расположение import java.awt.*; import javax.swing.*;
public class GridLayoutSample extends JFrame { public GridLayoutSample() ( super("GridLayoutSample"); setSize(300, 200); setLocation(100, 100);
setDefaultCloseOperation( EXIT_ON_CLOSE );
// вспомогательная панель JPanel grid = new JPanelO;
// первые два параметра конструктора GridLayout - // количество строк и столбцов в таблице // вторые два — расстояние между ячейками по X и Y GridLayout gl = new GridLayout(2, 0, 5, 12); grid.setLayout(gl);
// создаем 8 кнопок
for (int i=0; i<8; i++) {
grid.add(new JButton("Кнопка " + i));
}
// помещаем нашу панель в центр окна add(grid);
// устанавливаем оптимальный размер pack();
// показываем окно setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(
new Runnable() { public void run() { new GridLayoutSample(); } ));
}
}
Отформатировать таблицу по СТП МГУПИ
Отформатировать текст по СТП МГУПИ, ввести формулы с помощью инструмента MSEquation