我的数据存在问题,在所选标签的单元格内部包含我想要进行计算的JTable。我用3个表做了3个选项卡,我表的每个单元格都有整数用于测试。我想选择index = 1的tab然后尝试使用sum(x + y)这样的简单公式,当然它的工作不是index = 1的数据,而是JTabbedPane的lastIndex。有人能告诉我如何解决这个问题吗?
public class TabbedTable extends FormPanel implements ChangeListener{
private JTabbedPane jTabbedPane;
private int spreadCount;
private TaskPane taskPane;
private MultiOptionPane multiOptionPane;
private SpreadSheet[] spreadSheet;
public TabbedTable(String col,String row){
super(col, row);
initializePanel();
initializeTaskPane();
this.setBorder(BorderFactory.createBevelBorder(1, Colors.MyGray.color().darker(), Colors.MyGray.color().brighter()));
jTabbedPane.setUI(new TabbedUI());
jTabbedPane.addChangeListener(this);
jTabbedPane.setFont(Fonts.Calibri.font());
}
private void initializePanel(){
this.spreadCount = 3;
this.createtabbedPane();
}
private void createtabbedPane(){
jTabbedPane = new JTabbedPane();
taskPane = new TaskPane();
spreadSheet = new SpreadSheet[spreadCount];
for(int i = 0 ; i < spreadCount ; i ++){
spreadSheet[i]= new SpreadSheet(20,20,i);
jTabbedPane.addTab(spreadSheet[i].getTitle(), spreadSheet[i].getScrollPane());
}
this.addXY(taskPane, 1, 2);
this.addXY(jTabbedPane, 2, 2);
}
}
答案 0 :(得分:1)
为了完整起见,我会将我的评论作为实际答案。
您显示的代码中没有出现任何错误。理想情况下,我们需要查看Spreadsheet类中的内容。
从截图中可以看出,在同一个地方,两个标签的价值相同。如果每次都发生这种情况,则可能表明您对静态值存在问题,因为您对构造函数的调用是完全分开的。所以你应该研究一下。