Java by API/javax.swing/Box — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
|
Текущая версия на 14:19, 31 мая 2010
Содержание
Box: createGlue()
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
public class MainClass {
public static void main(String[] args) {
JFrame aWindow = new JFrame("This is a Box Layout");
aWindow.setBounds(200, 200, 200, 200);
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Box left = Box.createVerticalBox();
left.add(Box.createVerticalStrut(30));
ButtonGroup radioGroup = new ButtonGroup();
JRadioButton rbutton;
radioGroup.add(rbutton = new JRadioButton("Red"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Green"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Blue"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Yellow"));
left.add(rbutton);
left.add(Box.createGlue());
JPanel leftPanel = new JPanel(new BorderLayout());
leftPanel.setBorder(new TitledBorder(new EtchedBorder(), "Line Color"));
leftPanel.add(left, BorderLayout.CENTER);
Box right = Box.createVerticalBox();
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Dashed"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Thick"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Rounded"));
right.add(Box.createGlue());
JPanel rightPanel = new JPanel(new BorderLayout());
rightPanel
.setBorder(new TitledBorder(new EtchedBorder(), "Line Properties"));
rightPanel.add(right, BorderLayout.CENTER);
Box top = Box.createHorizontalBox();
top.add(leftPanel);
top.add(Box.createHorizontalStrut(5));
top.add(rightPanel);
Container content = aWindow.getContentPane();
content.setLayout(new BorderLayout());
content.add(top, BorderLayout.CENTER);
BoxLayout box = new BoxLayout(content, BoxLayout.Y_AXIS);
content.setLayout(box);
content.add(top);
aWindow.setVisible(true);
}
}
Box.createHorizontalBox()
import java.awt.BorderLayout;
import javax.swing.Box;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class MainClass {
public static void main(String args[]) {
JFrame f = new JFrame("JPasswordField Sample");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Box rowOne = Box.createHorizontalBox();
rowOne.add(new JLabel("Username"));
rowOne.add(new JTextField());
Box rowTwo = Box.createHorizontalBox();
rowTwo.add(new JLabel("Password"));
rowTwo.add(new JPasswordField());
f.add(rowOne, BorderLayout.NORTH);
f.add(rowTwo, BorderLayout.SOUTH);
f.setSize(300, 200);
f.setVisible(true);
}
}
Box: createHorizontalGlue()
// : c14:Box3.java
// Using Glue.
// <applet code=Box3 width=450 height=300></applet>
// From "Thinking in Java, 3rd ed." (c) Bruce Eckel 2002
// www.BruceEckel.ru. See copyright notice in CopyRight.txt.
import javax.swing.Box;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Main extends JApplet {
public void init() {
Box bv = Box.createVerticalBox();
bv.add(new JLabel("Hello"));
bv.add(Box.createVerticalGlue());
bv.add(new JLabel("Applet"));
bv.add(Box.createVerticalGlue());
bv.add(new JLabel("World"));
Box bh = Box.createHorizontalBox();
bh.add(new JLabel("Hello"));
bh.add(Box.createHorizontalGlue());
bh.add(new JLabel("Applet"));
bh.add(Box.createHorizontalGlue());
bh.add(new JLabel("World"));
bv.add(Box.createVerticalGlue());
bv.add(bh);
bv.add(Box.createVerticalGlue());
getContentPane().add(bv);
}
public static void main(String[] args) {
run(new Main(), 450, 300);
}
public static void run(JApplet applet, int width, int height) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(applet);
frame.setSize(width, height);
applet.init();
applet.start();
frame.setVisible(true);
}
} ///:~
Box: createHorizontalStrut(int v)
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
public class MainClass {
public static void main(String[] args) {
JFrame aWindow = new JFrame("This is a Box Layout");
aWindow.setBounds(200, 200, 200, 200);
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Box left = Box.createVerticalBox();
left.add(Box.createVerticalStrut(30));
ButtonGroup radioGroup = new ButtonGroup();
JRadioButton rbutton;
radioGroup.add(rbutton = new JRadioButton("Red"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Green"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Blue"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Yellow"));
left.add(rbutton);
left.add(Box.createGlue());
JPanel leftPanel = new JPanel(new BorderLayout());
leftPanel.setBorder(new TitledBorder(new EtchedBorder(), "Line Color"));
leftPanel.add(left, BorderLayout.CENTER);
Box right = Box.createVerticalBox();
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Dashed"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Thick"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Rounded"));
right.add(Box.createGlue());
JPanel rightPanel = new JPanel(new BorderLayout());
rightPanel
.setBorder(new TitledBorder(new EtchedBorder(), "Line Properties"));
rightPanel.add(right, BorderLayout.CENTER);
Box top = Box.createHorizontalBox();
top.add(leftPanel);
top.add(Box.createHorizontalStrut(5));
top.add(rightPanel);
Container content = aWindow.getContentPane();
content.setLayout(new BorderLayout());
content.add(top, BorderLayout.CENTER);
BoxLayout box = new BoxLayout(content, BoxLayout.Y_AXIS);
content.setLayout(box);
content.add(top);
aWindow.setVisible(true);
}
}
Box: createRigidArea(Dimension d)
// : c14:Box4.java
// Rigid areas are like pairs of struts.
// <applet code=Box4 width=450 height=300></applet>
// From "Thinking in Java, 3rd ed." (c) Bruce Eckel 2002
// www.BruceEckel.ru. See copyright notice in CopyRight.txt.
import java.awt.Dimension;
import javax.swing.Box;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Main extends JApplet {
public void init() {
Box bv = Box.createVerticalBox();
bv.add(new JButton("Top"));
bv.add(Box.createRigidArea(new Dimension(120, 90)));
bv.add(new JButton("Bottom"));
Box bh = Box.createHorizontalBox();
bh.add(new JButton("Left"));
bh.add(Box.createRigidArea(new Dimension(160, 80)));
bh.add(new JButton("Right"));
bv.add(bh);
getContentPane().add(bv);
}
public static void main(String[] args) {
run(new Main(), 450, 300);
}
public static void run(JApplet applet, int width, int height) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(applet);
frame.setSize(width, height);
applet.init();
applet.start();
frame.setVisible(true);
}
} ///:~
Box: createVerticalBox()
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
public class MainClass {
public static void main(String[] args) {
JFrame aWindow = new JFrame("This is a Box Layout");
aWindow.setBounds(200, 200, 200, 200);
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Box left = Box.createVerticalBox();
left.add(Box.createVerticalStrut(30));
ButtonGroup radioGroup = new ButtonGroup();
JRadioButton rbutton;
radioGroup.add(rbutton = new JRadioButton("Red"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Green"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Blue"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Yellow"));
left.add(rbutton);
left.add(Box.createGlue());
JPanel leftPanel = new JPanel(new BorderLayout());
leftPanel.setBorder(new TitledBorder(new EtchedBorder(), "Line Color"));
leftPanel.add(left, BorderLayout.CENTER);
Box right = Box.createVerticalBox();
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Dashed"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Thick"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Rounded"));
right.add(Box.createGlue());
JPanel rightPanel = new JPanel(new BorderLayout());
rightPanel
.setBorder(new TitledBorder(new EtchedBorder(), "Line Properties"));
rightPanel.add(right, BorderLayout.CENTER);
Box top = Box.createHorizontalBox();
top.add(leftPanel);
top.add(Box.createHorizontalStrut(5));
top.add(rightPanel);
Container content = aWindow.getContentPane();
content.setLayout(new BorderLayout());
content.add(top, BorderLayout.CENTER);
BoxLayout box = new BoxLayout(content, BoxLayout.Y_AXIS);
content.setLayout(box);
content.add(top);
aWindow.setVisible(true);
}
}
Box: createVerticalGlue()
// : c14:Box3.java
// Using Glue.
// <applet code=Box3 width=450 height=300></applet>
// From "Thinking in Java, 3rd ed." (c) Bruce Eckel 2002
// www.BruceEckel.ru. See copyright notice in CopyRight.txt.
import javax.swing.Box;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Main extends JApplet {
public void init() {
Box bv = Box.createVerticalBox();
bv.add(new JLabel("Hello"));
bv.add(Box.createVerticalGlue());
bv.add(new JLabel("Applet"));
bv.add(Box.createVerticalGlue());
bv.add(new JLabel("World"));
Box bh = Box.createHorizontalBox();
bh.add(new JLabel("Hello"));
bh.add(Box.createHorizontalGlue());
bh.add(new JLabel("Applet"));
bh.add(Box.createHorizontalGlue());
bh.add(new JLabel("World"));
bv.add(Box.createVerticalGlue());
bv.add(bh);
bv.add(Box.createVerticalGlue());
getContentPane().add(bv);
}
public static void main(String[] args) {
run(new Main(), 450, 300);
}
public static void run(JApplet applet, int width, int height) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(applet);
frame.setSize(width, height);
applet.init();
applet.start();
frame.setVisible(true);
}
} ///:~
Box: createVerticalStrut(int v)
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
public class MainClass {
public static void main(String[] args) {
JFrame aWindow = new JFrame("This is a Box Layout");
aWindow.setBounds(200, 200, 200, 200);
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Box left = Box.createVerticalBox();
left.add(Box.createVerticalStrut(30));
ButtonGroup radioGroup = new ButtonGroup();
JRadioButton rbutton;
radioGroup.add(rbutton = new JRadioButton("Red"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Green"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Blue"));
left.add(rbutton);
left.add(Box.createVerticalStrut(30));
radioGroup.add(rbutton = new JRadioButton("Yellow"));
left.add(rbutton);
left.add(Box.createGlue());
JPanel leftPanel = new JPanel(new BorderLayout());
leftPanel.setBorder(new TitledBorder(new EtchedBorder(), "Line Color"));
leftPanel.add(left, BorderLayout.CENTER);
Box right = Box.createVerticalBox();
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Dashed"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Thick"));
right.add(Box.createVerticalStrut(30));
right.add(new JCheckBox("Rounded"));
right.add(Box.createGlue());
JPanel rightPanel = new JPanel(new BorderLayout());
rightPanel
.setBorder(new TitledBorder(new EtchedBorder(), "Line Properties"));
rightPanel.add(right, BorderLayout.CENTER);
Box top = Box.createHorizontalBox();
top.add(leftPanel);
top.add(Box.createHorizontalStrut(5));
top.add(rightPanel);
Container content = aWindow.getContentPane();
content.setLayout(new BorderLayout());
content.add(top, BorderLayout.CENTER);
BoxLayout box = new BoxLayout(content, BoxLayout.Y_AXIS);
content.setLayout(box);
content.add(top);
aWindow.setVisible(true);
}
}