画面上に文字を出力して真ん中には2つのJComboBoxを出力をしたいのですが文字が消えてしまいます。
いろいろ調べたのですがわからなかったのでどなたか助けていただけると嬉しいです
package group;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Font;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
class JSample1_2 extends JFrame{ //JComboBoxの中身 Object [] combo1 ={"剣", "杖", "弓"}; Object [] combo2 ={"はやぶさの剣","名刀:斬鉄丸" ,"スーパーのナス"}; Object [] combo3 ={"いかずちの杖","イーリスの杖","スーパーのニンジン"}; Object [] combo4 ={"月光の弓","魔弓サジタリウス","スーパーのスイカ"}; DefaultComboBoxModel com1,com2,com3,com4; //JFrameクラスを継承したしたクラスを定義 public static void main(String args[]){ JSample1_2 frame = new JSample1_2("鍛冶職人シュミレーター"); frame.setVisible(true); } //Frame作成 JSample1_2(String title){ setTitle(title); setBounds(100, 100, 600, 400); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //出力させたい文字列(問題の部分) JLabel label1 = new JLabel(); label1.setText("鍛冶職人シュミレーター"); label1.setFont(new Font(Font.DIALOG_INPUT, Font.BOLD, 50)); JPanel p = new JPanel(); p.add(label1); Container contentPane = getContentPane(); contentPane.add(p, BorderLayout.CENTER); com1= new DefaultComboBoxModel(combo1); com2= new DefaultComboBoxModel(combo2); com3= new DefaultComboBoxModel(combo3); com4= new DefaultComboBoxModel(combo4); initComponents(); jComboBox1.setModel(com1); jComboBox2.setModel(com2); } private void initComponents() { jComboBox1 = new javax.swing.JComboBox(); jComboBox2 = new javax.swing.JComboBox(); getContentPane().setLayout(null); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jComboBox1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jComboBox1ActionPerformed(evt); } }); //JComboBoxの位置 getContentPane().add(jComboBox1); jComboBox1.setBounds(700, 300, 170, 50); getContentPane().add(jComboBox2); jComboBox2.setBounds(700, 400, 170, 50); } private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) { if (jComboBox1.getSelectedItem().equals(combo1[0])){ jComboBox2.setModel(com2); }else if (jComboBox1.getSelectedItem().equals(combo1[1])){ jComboBox2.setModel(com3); }else { jComboBox2.setModel(com4); } // ここに処理コードを追加: } private javax.swing.JComboBox jComboBox1; private javax.swing.JComboBox jComboBox2; }
回答2件
あなたの回答
tips
プレビュー