gpt4 book ai didi

java - 只想创建一次对象

转载 作者:行者123 更新时间:2023-12-01 18:44:04 25 4
gpt4 key购买 nike

我编写了这段代码来从数据库加载一些字符串。我想将这些字符串设置为 GUI 中的复选框。此表单有 2 个按钮,名为“下一步”和“上一步”。当我选择 2 个复选框并单击下一步按钮时,它将加载其他字符串集。现在,当我单击上一个按钮时,我想获取先前选定的具有选定状态的复选框。这些复选框是动态创建的。

private void loadAnswers(JPanel jp, String qId) {
jp.removeAll();
try {
List<Question> listQuestion = questionController.performSearch(qId);
ArrayList<String> answers = new ArrayList<>();
for (Question question : listQuestion) {
if (question.getOpA() != null) {
answers.add("<html>" + question.getOpA().replace("\n", "<br>") + "</html>");
}
if (question.getOpB() != null) {
answers.add("<html>" + question.getOpB().replace("\n", "<br>") + "</html>");
}
if (question.getOpC() != null) {
answers.add("<html>" + question.getOpC().replace("\n", "<br>") + "</html>");
}
if (question.getOpD() != null) {
answers.add("<html>" + question.getOpD().replace("\n", "<br>") + "</html>");
}
if (question.getOpE() != null) {
answers.add("<html>" + question.getOpE().replace("\n", "<br>") + "</html>");
}
if (question.getOpF() != null) {
answers.add("<html>" + question.getOpF().replace("\n", "<br>") + "</html>");
}
if (question.getOpG() != null) {
answers.add("<html>" + question.getOpG().replace("\n", "<br>") + "</html>");
}
}
JCheckBox[] chkBx = new JCheckBox[answers.size()];
for (int i = 0; i < chkBx.length; i++) {
chkBx[i] = new JCheckBox();
chkBx[i].setText(answers.get(i));
jPanel1.add(chkBx[i]);
}
jp.repaint();
jp.revalidate();
} catch (RemoteException ex) {
Logger.getLogger(TestPane.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(TestPane.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex) {
Logger.getLogger(TestPane.class.getName()).log(Level.SEVERE, null, ex);
}
}

最佳答案

组织文本框的存储(最好存储模型 - 文本框值)。我会建议一张 map 。当您必须移至下一页时,请检查所有复选框并将值放入 map 中。返回页面后,只需再次从 map 中提取值并设置复选框的状态即可。

键可以是答案的文本(如果它是唯一的)或问题字段中的字符串(question.getOpE())

关于java - 只想创建一次对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18638207/

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