import javax.swing.*;
import java.awt.*;
public class mypic {
static JFrame f1;
static JPanel p1,p2,main;
JLabel pic,L1,L2;
JTextField t1,t2;
GridLayout g1;
GridLayout g2;
BoxLayout g3;
Icon Image=new ImageIcon("E:\\workspace\\doexises\\pic.gif");

public mypic()
{
pic=new JLabel(Image);
p1.add(pic);
g1=new GridLayout();
p1.setLayout(g1);

L1=new JLabel("用户名");
    t1=new JTextField(10);
    L2=new JLabel("密码");
    t2=new JTextField(10);
p2=new JPanel();
p2.add(L1);
p2.add(t1);
p2.add(L2);
p2.add(t2);
g2=new GridLayout();
p2.setLayout(g2);

main=new JPanel();
g3=new BoxLayout(main,BoxLayout.X_AXIS);
g3.addLayoutComponent("a",p1);
g3.addLayoutComponent("zsf",p2);

f1.getContentPane().add(p1);
main.add(p1);
main.add(p2);
}
public static void main(String args[])
{
new mypic();
f1=new JFrame("大头鱼");
f1.setSize(500,500);
f1.setVisible(true);

}}

解决方案 »

  1.   

    p1=new JPanel();
        f1=new JFrame();
    这两个没初始化
      

  2.   


    import javax.swing.*;
    import java.awt.*;
    public class mypic {
    static JFrame f1;
    static JPanel p1,p2,main;  JLabel pic,L1,L2;
    JTextField t1,t2;
    GridLayout g1;
    GridLayout g2;
    BoxLayout g3;
    Icon Image=new ImageIcon("E:\\pic.gif");

    public mypic()
    {
    pic=new JLabel(Image);
    p1=new JPanel();
    p1.add(pic);
    g1=new GridLayout();
    p1.setLayout(g1);

    L1=new JLabel("用户名");
        t1=new JTextField(10);
        L2=new JLabel("密码");
        t2=new JTextField(10);
    p2=new JPanel();
    p2.add(L1);
    p2.add(t1);
    p2.add(L2);
    p2.add(t2);
    g2=new GridLayout();
    p2.setLayout(g2);
    main=new JPanel();
    g3=new BoxLayout(main,BoxLayout.X_AXIS);
    g3.addLayoutComponent("a",p1);
    g3.addLayoutComponent("zsf",p2);
    f1=new JFrame();
    main.add(p1);
    main.add(p2);
    f1.getContentPane().add(main);
    f1.setVisible(true);
    f1.pack();f1.setSize(500,500);
    }
    public static void main(String args[])
    {
    new mypic(); 
    }}