我想将数据添加到位于JTabbedpane上的JTable。我想在JTable中插入的数据是来自另一个名为(addcontact)的类的用户输入数据(TextField)。 cntctus是Jtable所在的标签。它包含一个向JTable插入新行的方法。
当我给 tname 文本字段(用户输入)赋值时,行上会出现 nullpointerexception : - //contctus.addData(new对象[] {,,,}
我的问题与此类似,应用了所有提到的解决方案。但仍然得到 nullpointerexception Data from JTextField to JTable 但就我而言,输入数据的类是不同的。 我正在为contctus选项卡提供图像。 ![。] [1] 这是cntctus类: -
public class cntctus extends JPanel{
JPanel p,tablepanel;
JLabel labelpic;
static JTable table;
int j,i,k=0;
String column[];
Object [][]row;
private static DefaultTableModel model;
public cntctus()
{
String column[]= { "Name","Position","Phone"};
Object [][]row = {{"Prof. g", "Director", "+123456"},
{"Mr. Suir singh", "Assistant Professor", "+9123568989"},
{"Ms. sa", "BI teacher","9468645"},
{"bhbnjk ","nj","k780"},
{"nb","hbj","9798679"}
};
model=new DefaultTableModel(row,column);
labelpic =new JLabel(new ImageIcon("D:\\Workspace\\nikhil\\bin\\Resources\\cont.png"));
table = new JTable(row,column);
TableColumn colum = null;
table.setFont(new Font("Comic Sans MS",15,13));
TableModel tm = table.getModel();
.
.
.
}
//这里是添加新行的方法
public static void addData(Object[] data) {
//String nextrow=Integer.toString(model.getRowCount());
model.addRow(data);
}
我从addcontact类调用此方法。 JTable包含三列。 现在动态我想在addcontact类的帮助下在我的JTable中添加更多联系人。 当我点击提交按钮时,我希望将所有三个细节都放在Jtable中 Code for addcontact类的一部分是: -
public void actionPerformed(ActionEvent aes) {
Object src=aes.getSource();
if(src==submit){
if(tname.getText().equals("")){
JOptionPane.showMessageDialog(null, "Please fill contact name!!");
}
else
{
cntctus.addData( new Object[]{tname.getText(), tpos.getText(), tnum.getText()});
//validate();
}
if(tpos.getText().equals("")){
JOptionPane.showMessageDialog(null, "Please fill contact details!!");
}
if(tnum.getText().equals("")){
JOptionPane.showMessageDialog(null, "Please fill contact number!!");
}
}