summaryrefslogtreecommitdiffstats
path: root/lib/example/Preferred.java
diff options
context:
space:
mode:
Diffstat (limited to 'lib/example/Preferred.java')
-rw-r--r--lib/example/Preferred.java106
1 files changed, 106 insertions, 0 deletions
diff --git a/lib/example/Preferred.java b/lib/example/Preferred.java
new file mode 100644
index 0000000..aa1e8a6
--- /dev/null
+++ b/lib/example/Preferred.java
@@ -0,0 +1,106 @@
1package example;
2
3
4
5import java.awt.*;
6import java.awt.event.*;
7import javax.swing.*;
8import layout.TableLayout;
9
10
11
12public class Preferred extends JFrame
13{
14
15
16
17 public static void main (String args[])
18 {
19 new Preferred();
20 }
21
22
23
24 public Preferred ()
25 {
26 super ("The Power of Preferred Sizes");
27
28 Container pane = getContentPane();
29
30 // b - border
31 // f - FILL
32 // p - PREFERRED
33 // vs - vertical space between labels and text fields
34 // vg - vertical gap between form elements
35 // hg - horizontal gap between form elements
36
37 double b = 10;
38 double f = TableLayout.FILL;
39 double p = TableLayout.PREFERRED;
40 double vs = 5;
41 double vg = 10;
42 double hg = 10;
43
44 double size[][] =
45 {{b, f, hg, p, hg, p, b},
46 {b, p, vs, p, vg, p, vs, p, vg, p, vs, p, vg, p, b}};
47
48 TableLayout layout = new TableLayout(size);
49 pane.setLayout (layout);
50
51 // Create all controls
52 JLabel labelName = new JLabel("Name");
53 JLabel labelAddress = new JLabel("Address");
54 JLabel labelCity = new JLabel("City");
55 JLabel labelState = new JLabel("State");
56 JLabel labelZip = new JLabel("Zip");
57
58 JTextField textfieldName = new JTextField(10);
59 JTextField textfieldAddress = new JTextField(20);
60 JTextField textfieldCity = new JTextField(10);
61 JTextField textfieldState = new JTextField(2);
62 JTextField textfieldZip = new JTextField(5);
63
64 JButton buttonOk = new JButton("OK");
65 JButton buttonCancel = new JButton("Cancel");
66 JPanel panelButton = new JPanel();
67 panelButton.add (buttonOk);
68 panelButton.add (buttonCancel);
69
70 // Add all controls
71 pane.add (labelName, "1, 1, 5, 1");
72 pane.add (textfieldName, "1, 3, 5, 3");
73 pane.add (labelAddress, "1, 5, 5, 5");
74 pane.add (textfieldAddress, "1, 7, 5, 7");
75 pane.add (labelCity, "1, 9");
76 pane.add (textfieldCity, "1, 11");
77 pane.add (labelState, "3, 9");
78 pane.add (textfieldState, "3, 11");
79 pane.add (labelZip, "5, 9");
80 pane.add (textfieldZip, "5, 11");
81 pane.add (panelButton, "1, 13, 5, 13");
82
83 allowClosing();
84 pack();
85 setResizable (false);
86 show();
87 }
88
89
90
91 public void allowClosing ()
92 {
93 addWindowListener
94 (new WindowAdapter()
95 {
96 public void windowClosing (WindowEvent e)
97 {
98 System.exit (0);
99 }
100 }
101 );
102 }
103
104
105
106}