import javax.swing.*; import java.awt.Dimension; import java.awt.BorderLayout; import java.util.ArrayList; import java.awt.event.*; public class JSpinnerTest9 extends JFrame implements ActionListener{ SpinnerListModel model; JRadioButton radio1; JRadioButton radio2; ArrayList japaneseData; ArrayList englishData; public static void main(String[] args){ JSpinnerTest9 frame = new JSpinnerTest9(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(10, 10, 300, 200); frame.setTitle("タイトル"); frame.setVisible(true); } JSpinnerTest9(){ japaneseData = new ArrayList(); japaneseData.add("コーヒー"); japaneseData.add("紅茶"); japaneseData.add("牛乳"); englishData = new ArrayList(); englishData.add("coffee"); englishData.add("tea"); englishData.add("milk"); model = new SpinnerListModel(japaneseData); JSpinner spinner = new JSpinner(model); spinner.setPreferredSize(new Dimension(100, 25)); JPanel p = new JPanel(); p.add(spinner); radio1 = new JRadioButton("日本語", true); radio1.addActionListener(this); radio1.setActionCommand("japanese"); radio2 = new JRadioButton("英語"); radio2.addActionListener(this); radio2.setActionCommand("english"); ButtonGroup group = new ButtonGroup(); group.add(radio1); group.add(radio2); JPanel radioPanel = new JPanel(); radioPanel.add(radio1); radioPanel.add(radio2); getContentPane().add(radioPanel, BorderLayout.PAGE_START); getContentPane().add(p, BorderLayout.CENTER); } public void actionPerformed(ActionEvent e){ String cmd = e.getActionCommand(); if (cmd.equals("japanese")){ model.setList(japaneseData); }else if (cmd.equals("english")){ model.setList(englishData); } }