代码如下:
import java.awt.*;
import java.awt.event.*;import javax.swing.*;public class GridBagDemo extends JFrame{
private Container container;
private GridBagLayout layout;
private GridBagConstraints constraints;
public GridBagDemo(){
super("GridBag Demo");
Container container = getContentPane();
layout = new GridBagLayout();
container.setLayout(layout);
constraints = new GridBagConstraints();
JTextField textField = new JTextField("TextField");
JButton zero = new JButton("zero");
JButton one = new JButton("one");
JButton two = new JButton("two");
String metal[] = {"Copper", "Aluminum", "Silver"};
JComboBox comboBox = new JComboBox(metal);
JButton three = new JButton("three");
JButton four = new JButton("four");
String fonts[] = {"Serif", "Monospaced"};
JList list = new JList(fonts);
constraints.fill = GridBagConstraints.BOTH;
addComponent(textField, 0, 0, 3, 1); //此处出错
constraints.fill = GridBagConstraints.BOTH;
addComponent(zero, 1, 0, 1, 1);
constraints.weightx = 1000;
constraints.weighty = 1;
constraints.fill = GridBagConstraints.BOTH;
addComponent(one, 1, 1, 1, 1);
constraints.weightx = 0;
constraints.weighty = 0;
constraints.fill = GridBagConstraints.BOTH;
addComponent(two, 1, 2, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(comboBox, 2, 0, 3, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(three, 3, 0, 3, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(four, 4, 0, 2, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(list, 4, 2, 1, 1);
setSize(300, 150);
setVisible(true);
}
private void addComponent(Component component, int row, int column, int width, int height) {
constraints.gridx = column;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
container.add(component); //此处出错
} public static void main(String[] args) {
GridBagDemo application = new GridBagDemo(); //此处出错
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}}求高手指点!
import java.awt.*;
import java.awt.event.*;import javax.swing.*;public class GridBagDemo extends JFrame{
private Container container;
private GridBagLayout layout;
private GridBagConstraints constraints;
public GridBagDemo(){
super("GridBag Demo");
Container container = getContentPane();
layout = new GridBagLayout();
container.setLayout(layout);
constraints = new GridBagConstraints();
JTextField textField = new JTextField("TextField");
JButton zero = new JButton("zero");
JButton one = new JButton("one");
JButton two = new JButton("two");
String metal[] = {"Copper", "Aluminum", "Silver"};
JComboBox comboBox = new JComboBox(metal);
JButton three = new JButton("three");
JButton four = new JButton("four");
String fonts[] = {"Serif", "Monospaced"};
JList list = new JList(fonts);
constraints.fill = GridBagConstraints.BOTH;
addComponent(textField, 0, 0, 3, 1); //此处出错
constraints.fill = GridBagConstraints.BOTH;
addComponent(zero, 1, 0, 1, 1);
constraints.weightx = 1000;
constraints.weighty = 1;
constraints.fill = GridBagConstraints.BOTH;
addComponent(one, 1, 1, 1, 1);
constraints.weightx = 0;
constraints.weighty = 0;
constraints.fill = GridBagConstraints.BOTH;
addComponent(two, 1, 2, 1, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(comboBox, 2, 0, 3, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(three, 3, 0, 3, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(four, 4, 0, 2, 1);
constraints.fill = GridBagConstraints.BOTH;
addComponent(list, 4, 2, 1, 1);
setSize(300, 150);
setVisible(true);
}
private void addComponent(Component component, int row, int column, int width, int height) {
constraints.gridx = column;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
container.add(component); //此处出错
} public static void main(String[] args) {
GridBagDemo application = new GridBagDemo(); //此处出错
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}}求高手指点!
import java.awt.*;
import java.awt.event.*; import javax.swing.*; public class GridBagDemo extends JFrame{
private Container container;
private GridBagLayout layout;
private GridBagConstraints constraints; public GridBagDemo(){
super("GridBag Demo"); container = getContentPane();
layout = new GridBagLayout();
container.setLayout(layout); constraints = new GridBagConstraints(); JTextField textField = new JTextField("TextField"); JButton zero = new JButton("zero");
JButton one = new JButton("one");
JButton two = new JButton("two"); String metal[] = {"Copper", "Aluminum", "Silver"};
JComboBox comboBox = new JComboBox(metal); JButton three = new JButton("three"); JButton four = new JButton("four"); String fonts[] = {"Serif", "Monospaced"};
JList list = new JList(fonts); constraints.fill = GridBagConstraints.BOTH;
addComponent(textField, 0, 0, 3, 1); constraints.fill = GridBagConstraints.BOTH;
addComponent(zero, 1, 0, 1, 1); constraints.weightx = 1000;
constraints.weighty = 1;
constraints.fill = GridBagConstraints.BOTH;
addComponent(one, 1, 1, 1, 1); constraints.weightx = 0;
constraints.weighty = 0;
constraints.fill = GridBagConstraints.BOTH;
addComponent(two, 1, 2, 1, 1); constraints.fill = GridBagConstraints.BOTH;
addComponent(comboBox, 2, 0, 3, 1); constraints.fill = GridBagConstraints.BOTH;
addComponent(three, 3, 0, 3, 1); constraints.fill = GridBagConstraints.BOTH;
addComponent(four, 4, 0, 2, 1); constraints.fill = GridBagConstraints.BOTH;
addComponent(list, 4, 2, 1, 1); setSize(300, 150);
setVisible(true);
} private void addComponent(Component component, int row, int column, int width, int height) { constraints.gridx = column;
constraints.gridy = row; constraints.gridwidth = width;
constraints.gridheight = height; layout.setConstraints(component, constraints);
container.add(component);
} public static void main(String[] args) { GridBagDemo application = new GridBagDemo(); application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} }
Container container = getContentPane();
這句改成 container = getContentPane();