gpt4 book ai didi

java - 如何使用 jbutton 清除 jtable 中的数据

转载 作者:行者123 更新时间:2023-11-29 03:19:29 24 4
gpt4 key购买 nike

我有一个代表大量数据的表格。这是创建该表的代码

DefaultTableModel model = (DefaultTableModel) Main_Menu.jTable3.getModel(); //Main menu is my form



List<ReportCalculateSimiliarity> theListRCS = new ArrayList<ReportCalculateSimiliarity>();
ReportCalculateSimiliarity rcs = new ReportCalculateSimiliarity();

rcs.setNameOfMainFile(name);
rcs.setNameOfComparingFile(enemy);
rcs.setLevenstheins(resultOfLevenstheins);
rcs.setSmithWaterman(resultOfSmithWaterman);

theListRCS.add(rcs);


for (ReportCalculateSimiliarity reportCalculateSimiliarity : theListRCS) {

model.addRow(new Object[]{
reportCalculateSimiliarity.getMainFile(),
reportCalculateSimiliarity.getComparingFile(),
reportCalculateSimiliarity.getLevenstheins(),
reportCalculateSimiliarity.getSmithWaterman(),

});
}

然后,我有一个 jbutton 来重置该数据。代码是这样的:

private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {                                          
int confirm = JOptionPane.showConfirmDialog(null, "clear ?", "end session", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (confirm == JOptionPane.YES_OPTION) {
//this is to clear that jtable
}
}

我必须这样做,因为我的 jTable 已连接到 jfreechart。如果 jtable 中的数据不清楚,jfreechart 就会出错,因为以前的数据仍然存在并在我的条形图中形成一个条形图。条形图代码如下:

public final CategoryDataset createDataset() {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.clear();

String algoritma1 = "Levensthein";
String algoritma2 = "SmithWaterman";

for (int i = 0; i < Main_Menu.jTable3.getRowCount(); i++) {

Object fileName = Main_Menu.jTable3.getValueAt(i, 1);
String fileNameToString = fileName.toString();

Object nilaiLevensthein = Main_Menu.jTable3.getValueAt(i, 2); // Ambil Nilai Persentase Levensthein
double count1 = Double.parseDouble(nilaiLevensthein.toString());

Object nilaiSmithWaterman = Main_Menu.jTable3.getValueAt(i, 3);
double count2 = Double.parseDouble(nilaiSmithWaterman.toString());

dataset.addValue(count1, algorithm1, fileNameToString);
dataset.addValue(count2, algorithm2, fileNameToString);

}

对于帮助,非常感谢...

最佳答案

正如评论所说,DefaultTableModel#setRowCount是要走的路。

  private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {                                          
int confirm = JOptionPane.showConfirmDialog(null, "clear ?", "end session", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (confirm == JOptionPane.YES_OPTION) {
((DefaultTableModel) Main_Menu.jTable3.getModel()).setRowCount(0);
}
}

关于java - 如何使用 jbutton 清除 jtable 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24579492/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com