本人自学了一下Java,现在想做一个小系统来练一练,下面的代码在编译和运行过程都没报错,可是就完成不了想要的功能,例如在按下“添加”按钮时没有反应。请各位前辈指点指点,请指明在哪里出了问题,最好还是详细点。谢谢!
---------------------StuM.java------------------------------------
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class StuM extends JFrame implements ActionListener
{
Container con=getContentPane(); ;
JLabel Lsnum,Lsname,Lssex,Lsgra,Lssch,Lsage,Lsmaj,Lsdor,Lshome;
JTextField Tsnum,Tsname,Tssex,Tsgra,Tssch,Tsage,Tsmaj,Tsdor,Tshome;
JPanel topPanel,downPanel;
//JSplitPane split;
JButton Badd,Bdelete,BsetNull,Bsave,Bexit;
Dimension faceSize=new Dimension(600,400);
public void topInit()
{
this.setSize(faceSize);
GridBagLayout gridbag=new GridBagLayout();
GridBagConstraints gridbagcon;
//this.setLayout(gridbag);
Lsnum=new JLabel("学 号 :");
Lsnum.setFont(new Font("Dialog",0,15));
Lsname=new JLabel("姓 名 :");
Lsname.setFont(new Font("Dialog",0,15));
Lssex=new JLabel("性 别 :");
Lssex.setFont(new Font("Dialog",0,15));
Lsage=new JLabel("年 龄 :");
Lsage.setFont(new Font("Dialog",0,15));
Lssch=new JLabel("学 院 :");
Lssch.setFont(new Font("Dialog",0,15));
Lsgra=new JLabel("年 级 :");
Lsgra.setFont(new Font("Dialog",0,15));
Lsmaj=new JLabel("专 业 :");
Lsmaj.setFont(new Font("Dialog",0,15));
Lsdor=new JLabel("宿 舍 :");
Lsdor.setFont(new Font("Dialog",0,15));
Lshome=new JLabel("籍 贯 :");
Lshome.setFont(new Font("Dialog",0,15));
Tsnum=new JTextField(10);
Tsname=new JTextField(10);
Tssex=new JTextField(10);
Tsage=new JTextField(10);
Tssch=new JTextField(10);
Tsgra=new JTextField(10);
Tsmaj=new JTextField(10);
Tsdor=new JTextField(10);
Tshome=new JTextField(35);
topPanel=new JPanel();
topPanel.setLayout(gridbag);
downPanel=new JPanel();
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lsnum,gridbagcon);
topPanel.add(Lsnum);
gridbagcon.gridx=1;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tsnum,gridbagcon);
topPanel.add(Tsnum);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsname,gridbagcon);
topPanel.add(Lsname);
gridbagcon.gridx=3;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsname,gridbagcon);
topPanel.add(Tsname);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lssex,gridbagcon);
topPanel.add(Lssex);
gridbagcon.gridx=1;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tssex,gridbagcon);
topPanel.add(Tssex);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsage,gridbagcon);
topPanel.add(Lsage);
gridbagcon.gridx=3;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsage,gridbagcon);
topPanel.add(Tsage);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lssch,gridbagcon);
topPanel.add(Lssch);
gridbagcon.gridx=1;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tssch,gridbagcon);
topPanel.add(Tssch);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsgra,gridbagcon);
topPanel.add(Lsgra);
gridbagcon.gridx=3;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsgra,gridbagcon);
topPanel.add(Tsgra);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lsmaj,gridbagcon);
topPanel.add(Lsmaj);
gridbagcon.gridx=1;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tsmaj,gridbagcon);
topPanel.add(Tsmaj);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsdor,gridbagcon);
topPanel.add(Lsdor);
gridbagcon.gridx=3;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,1,10,1);
gridbag.setConstraints(Tsdor,gridbagcon);
topPanel.add(Tsdor);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=4;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lshome,gridbagcon);
topPanel.add(Lshome);
gridbagcon.gridx=1;
gridbagcon.gridy=4;
gridbagcon.insets=new Insets(10,1,10,30);
gridbagcon.gridwidth=gridbagcon.REMAINDER;
gridbag.setConstraints(Tshome,gridbagcon);
topPanel.add(Tshome);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{System.exit(0);}
}); //split=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true,topPanel,downPanel);
con.add(topPanel,BorderLayout.CENTER); //validate();
}
---------------------StuM.java------------------------------------
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class StuM extends JFrame implements ActionListener
{
Container con=getContentPane(); ;
JLabel Lsnum,Lsname,Lssex,Lsgra,Lssch,Lsage,Lsmaj,Lsdor,Lshome;
JTextField Tsnum,Tsname,Tssex,Tsgra,Tssch,Tsage,Tsmaj,Tsdor,Tshome;
JPanel topPanel,downPanel;
//JSplitPane split;
JButton Badd,Bdelete,BsetNull,Bsave,Bexit;
Dimension faceSize=new Dimension(600,400);
public void topInit()
{
this.setSize(faceSize);
GridBagLayout gridbag=new GridBagLayout();
GridBagConstraints gridbagcon;
//this.setLayout(gridbag);
Lsnum=new JLabel("学 号 :");
Lsnum.setFont(new Font("Dialog",0,15));
Lsname=new JLabel("姓 名 :");
Lsname.setFont(new Font("Dialog",0,15));
Lssex=new JLabel("性 别 :");
Lssex.setFont(new Font("Dialog",0,15));
Lsage=new JLabel("年 龄 :");
Lsage.setFont(new Font("Dialog",0,15));
Lssch=new JLabel("学 院 :");
Lssch.setFont(new Font("Dialog",0,15));
Lsgra=new JLabel("年 级 :");
Lsgra.setFont(new Font("Dialog",0,15));
Lsmaj=new JLabel("专 业 :");
Lsmaj.setFont(new Font("Dialog",0,15));
Lsdor=new JLabel("宿 舍 :");
Lsdor.setFont(new Font("Dialog",0,15));
Lshome=new JLabel("籍 贯 :");
Lshome.setFont(new Font("Dialog",0,15));
Tsnum=new JTextField(10);
Tsname=new JTextField(10);
Tssex=new JTextField(10);
Tsage=new JTextField(10);
Tssch=new JTextField(10);
Tsgra=new JTextField(10);
Tsmaj=new JTextField(10);
Tsdor=new JTextField(10);
Tshome=new JTextField(35);
topPanel=new JPanel();
topPanel.setLayout(gridbag);
downPanel=new JPanel();
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lsnum,gridbagcon);
topPanel.add(Lsnum);
gridbagcon.gridx=1;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tsnum,gridbagcon);
topPanel.add(Tsnum);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsname,gridbagcon);
topPanel.add(Lsname);
gridbagcon.gridx=3;
gridbagcon.gridy=0;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsname,gridbagcon);
topPanel.add(Tsname);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lssex,gridbagcon);
topPanel.add(Lssex);
gridbagcon.gridx=1;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tssex,gridbagcon);
topPanel.add(Tssex);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsage,gridbagcon);
topPanel.add(Lsage);
gridbagcon.gridx=3;
gridbagcon.gridy=1;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsage,gridbagcon);
topPanel.add(Tsage);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lssch,gridbagcon);
topPanel.add(Lssch);
gridbagcon.gridx=1;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tssch,gridbagcon);
topPanel.add(Tssch);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsgra,gridbagcon);
topPanel.add(Lsgra);
gridbagcon.gridx=3;
gridbagcon.gridy=2;
gridbagcon.insets=new Insets(10,15,10,15);
gridbag.setConstraints(Tsgra,gridbagcon);
topPanel.add(Tsgra);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lsmaj,gridbagcon);
topPanel.add(Lsmaj);
gridbagcon.gridx=1;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,1,10,30);
gridbag.setConstraints(Tsmaj,gridbagcon);
topPanel.add(Tsmaj);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=2;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,50,10,1);
gridbag.setConstraints(Lsdor,gridbagcon);
topPanel.add(Lsdor);
gridbagcon.gridx=3;
gridbagcon.gridy=3;
gridbagcon.insets=new Insets(10,1,10,1);
gridbag.setConstraints(Tsdor,gridbagcon);
topPanel.add(Tsdor);
gridbagcon=new GridBagConstraints();
gridbagcon.gridx=0;
gridbagcon.gridy=4;
gridbagcon.insets=new Insets(10,10,10,15);
gridbag.setConstraints(Lshome,gridbagcon);
topPanel.add(Lshome);
gridbagcon.gridx=1;
gridbagcon.gridy=4;
gridbagcon.insets=new Insets(10,1,10,30);
gridbagcon.gridwidth=gridbagcon.REMAINDER;
gridbag.setConstraints(Tshome,gridbagcon);
topPanel.add(Tshome);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{System.exit(0);}
}); //split=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true,topPanel,downPanel);
con.add(topPanel,BorderLayout.CENTER); //validate();
}
解决方案 »
- 空指针异常
- 有时候他会卡住在line = reader.readLine()) != null
- 泛型的桥方法
- 求助:模拟Notepad记事本的功能
- 通过什么方法把JTable从一个方法中放到另一个方法的JFrame中!
- elcipse rcp程序的视图问题
- SQL Server数据库连接长时间不使用,会自动关闭
- import的奇怪问题!!高分送上!!
- 我为什么运行不了sun j2sdkee1.3 doc中的sample :Converter?
- classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" ????
- 【向ZangXT提问】嵌套if语句 vs 条件or(||)判定:哪一个更好?
- eclipse 3.1 + myeclipse4.1 的下载地址...
{
Badd=new JButton("添加");
downPanel.add(Badd);
Badd.addActionListener(this);
Bdelete=new JButton("删除");
downPanel.add(Bdelete);
Bdelete.addActionListener(this);
BsetNull=new JButton("清空");
downPanel.add(BsetNull);
BsetNull.addActionListener(this);
Bsave=new JButton("保存");
downPanel.add(Bsave);
Bsave.addActionListener(this);
Bexit=new JButton("退出");
downPanel.add(Bexit);
Bexit.addActionListener(this);
con.add(downPanel,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e)
{
Object obj=e.getSource();
if(obj==BsetNull)
{
Tsnum.setText("");Tsname.setText("");
Tssex.setText("");Tsage.setText("");
Tssch.setText("");Tsgra.setText("");
Tsmaj.setText("");Tsdor.setText("");
Tshome.setText("");
}
else if (obj==Bexit)
{System.exit(0);
}
else if (obj==Badd)
{
}
else if (obj==Bdelete)
{
}
else if (obj==Bsave)
{
}
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Sadd extends StuM implements ActionListener
{
public void downInit()
{
Badd=new JButton("添加");
downPanel.add(Badd);
Badd.addActionListener(this);
BsetNull=new JButton("清空");
downPanel.add(BsetNull);
BsetNull.addActionListener(this);
Bexit=new JButton("退出");
downPanel.add(Bexit);
Bexit.addActionListener(this);
con.add(downPanel,BorderLayout.SOUTH);
}
public void ActionPerformed(ActionEvent e)
{
Object obj=e.getSource();
if (obj==Badd)
{
JOptionPane.showMessageDialog(null,"添加成功");
//Student student=new Student();
//student.addStu(Tsnum.getText(),Tsname.getText(),Tssex.getText(),Tsage.getText(),Tssch.getText(),Tsgra.getText(),Tsmaj.getText(),Tsdor.getText(),Tshome.getText()); }
}
public static void main(String args[])
{
Sadd addStudent=new Sadd();
addStudent.topInit();
addStudent.downInit();
addStudent.pack();
addStudent.setVisible(true);
}
}
Sadd.java中的public void ActionPerformed(ActionEvent e) 这句错了,
改为public void actionPerformed(ActionEvent e)