/**
* A Simple stand-alone GUI program based on Swing.
* Multiple windows.
*
* This example uses a class that extends JFrame
* instead of creating a JFrame object!
* The main creates 2 of these objects,
* and puts some buttons in one and a textfield
* in another.
*
* @author Dave Hollinger
* @version 1.0
*/
import javax.swing.*;
import java.awt.*; // needed for Container
class WindowPlay extends JFrame {
WindowPlay() {
super();
// establish what happens when the window is closed
// (without this the program would keep running!)
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String [] args) {
WindowPlay w1 = new WindowPlay();
WindowPlay w2 = new WindowPlay();
w1.buttons();
w2.textfield();
w1.setSize(200,200);
w1.setTitle("Button Window");
w1.setVisible(true);
w2.setSize(200,200);
w2.setTitle("TextField Window");
w2.setVisible(true);
}
// add buttons to content pane
void buttons() {
Container c = getContentPane();
// establish the layout manager
// 3 rows, 2 cols everything 5 pixels apart
c.setLayout( new GridLayout(2,3,5,5));
// add a bunch of buttons
for (int i=0;i<6;i++) {
JButton j = new JButton(new Integer(i).toString());
// change the font
j.setFont(new Font("Courier",Font.BOLD,20));
// change the colors
j.setBackground(Color.WHITE);
j.setForeground(Color.BLACK);
c.add(j);
}
}
// add a single textfield to content pane
void textfield() {
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.setBackground(Color.BLUE);
// add single text field
JTextField t = new JTextField();
t.setText("Hello World");
t.setSize(100,40);
t.setFont(new Font("TimesRoman",Font.BOLD,30));
t.setBackground(Color.WHITE);
t.setForeground(Color.BLACK);
c.add(t);
}
}