0

ボタンを含む「frame1」を作成したので、そのボタンをクリックすると、ボタン アクション実行メソッドが LinkedList が空かどうかをチェックし、空である場合は、radioButton 呼び出し addEmployees_Auto を含む「addEmployee」フレームを表示します。クリックすると、frame1 からメソッド「add_Auto」が呼び出されます。これでframe1のlinkedListがいっぱいになるはずですが、ボタンをもう一度クリックすると、LinkedListは再び空になります。なぜ?LinkedListを埋めるべきではありませんか??

これは「フレーム1」です

public class Frame1 extends javax.swing.JFrame {

    LinkedList <Employee>list2=new LinkedList <Employee>();
        ....

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

    System.out.println("size="+list2.size());

    if(list2.isEmpty())
      new AddEmployees.setVisible(true);
}

public void addEmployees_Auto()
     {

        list2.add(new Employee(20910733,"Ahmed","Manager",2700));
        list2.add(new Employee(20910835,"Omar","Teaacher",2100));
        list2.add(new Employee(20910674,"Mohammed","Manager",3000));
        list2.add(new Employee(20910955,"Kareem","",2700));
        list2.add(new Employee(20910921,"Ameer","teacher",2500));

     }
}

AddEmployee フレーム:

public class AddEmployees extends javax.swing.JFrame {
             ...

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)    
 {                                         

     if(jRadioButton2.isSelected()){

        new Frame1().addEmployees_Auto();
        this.setVisible(false);
  }

}       
4

1 に答える 1

0

これはあなたがやっているからだと思います:

new Frame1()

クラスで毎回AddEmployees、新しいリンクリストが作成されるたびに、常に空になります。Frame1の呼び出しインスタンスへの参照を渡す必要があります。

new AddEmployees(this)

クラスから、適切なコンストラクターをクラスFrame1に追加します。AddEmployees

public AddEmployees(JFrame parent) { ... }
于 2013-04-09T18:44:48.747 に答える