0
我在另一個類中創建了一個類的實例。在課堂上,我創建了一個帶有單選按鈕和按鈕的JFrame。當用戶點擊按鈕時,我希望選中的單選按鈕的文本返回到另一個類。但它不起作用。換句話說,一個變量沒有返回。我該怎麼辦?在另一個類中得到JButton的結果
我的第一類的代碼:
public class SelectLayoutCreator {
public JFrame f = new JFrame("Choos Rule");
public String a;
public SelectLayoutCreator(ArrayList<String> choose) {
// TODO Auto-generated constructor stub
ArrayList<JRadioButton> ruleRadioButtions = new ArrayList<JRadioButton>();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400, 300);
f.setLayout(null);
JTextField ruleText = new JTextField();
ruleText.setBounds(30, 67, 90, 10);
f.add(ruleText);
JLabel ruleLabel = new JLabel ("Which of the following rules should be execute?");
ruleLabel.setBounds(20, 20, 350, 20);
f.add(ruleLabel);
ButtonGroup group = new ButtonGroup();
for (int i = 0; i < choose.size(); i++) {
JRadioButton radio = new JRadioButton(choose.get(i));
radio.setActionCommand(choose.get(i));
ruleRadioButtions.add(radio);
ruleRadioButtions.get(i).setBounds(20, 50+20*i, 200, 30);
group.add(ruleRadioButtions.get(i));
f.add(ruleRadioButtions.get(i));
}
JButton b = new JButton("Select");
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
**a** = group.getSelection().getActionCommand();
}
});
f.add(b);
b.setBounds(270,220,100, 40);
e.setBounds(170,120,100, 40);
f.setVisible(true);
}
另一個類的鱈魚:
public class interfaceRule {
public String call(ArrayList<String> choose)
{
SelectLayoutCreator s = new SelectLayoutCreator(choose);
return s.a;
}
}
什麼是'SelectLayoutCreator'和'interfaceRule'之間的關係?你可以簡單地實例化按鈕操作中的'interfaceRule'嗎?順便說一句,縮進和正確的命名約定很好用。 – AxelH