我想問的是有沒有從JCheckBox獲取信息的方式沒有actionListener。在我的代碼中,我掃描了一個字符串文件,並且每行都有數據,如果選中的話,應該將其添加到我的程序中的數組中。問題是我永遠不知道有多少JCheckBoxes,它取決於文件。因此,我的問題是如何通過按下按鈕(確定)將選定的字符串放入數組(或列表),所以我可以做他們的其他事情(在我的情況下,我需要從文件或從手工輸入並將其放在紅黑樹中,所以我需要將選定的字符串推送到我的putDataInTheTree方法中)。獲取JCheckBox選擇的框值
編輯:另外,是否有可能不顯示那些已經添加到程序的JCheckBoxes? I.E.如果我選擇液體,下次我打電話輸入法液體不會顯示在我的面板?
在此先感謝!
如何看起來:
我的代碼是迄今:
public void input() {
try {
mainWindow.setEnabled(false);
fromFile = new JFrame("Input from file");
fromFile.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
fromFile.setLayout(new BorderLayout());
fromFile.setSize(300,200);
panelFromFile = new JPanel();
panelFromFile.setLayout(new java.awt.GridLayout(0,1));
JScrollPane scrollPane2 = new JScrollPane(panelFromFile);
scrollPane2.setMaximumSize(new Dimension(300, 180));
FileReader File = new FileReader(data);
BufferedReader Buffer = new BufferedReader(File);
while ((info = Buffer.readLine()) != null) {
if (info != null) {
JCheckBox check = new JCheckBox(info);
panelFromFile.add(check);
}
}
ok = new JButton("ok");
ok.addActionListener(this);
fromFile.add(scrollPane2, BorderLayout.CENTER);
fromFile.add(ok, BorderLayout.SOUTH);
fromFile.setLocationRelativeTo(null);
fromFile.setResizable(false);
fromFile.setVisible(true);
}
catch(Exception e) {
text.append("Error in INPUT method");
text.append(System.getProperty("line.separator"));
}
}
感謝解釋,幫助了很多:) –