簡體   English   中英

我如何獲取已從jdialog類創建的對象以在另一個jdialog類中使用

[英]how do i get a object that has been created from a jdialog class to be use in another jdialog class

我創建了3個TourAgency類,addTourAgency Jdialog類和addGuide Jdialog類

TourAgency類

public class TourAgency 
{

  ...

  public TourAgency() {
        this("Not set", "Not set");
    }
public TourAgency(String inAgencyName, String inAgencyLocation)
{
  setAgencyName(inAgencyName); 
  setAgencyLocation(inAgencyLocation); 
}

addTourAgency類(創建代理商的代碼)

public class addTAJD extends JDialog{

    ...

    private TourAgency ta1;

    okBtn.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent ae)
        {
                String name = nameTF.getText().trim();
                String location = locationTF.getText().trim();

                ta1 = new TourAgency(name, location);

                ...

                setVisible(false);
                JOptionPane.showMessageDialog(null, ta1.getAgencyName() + " is created");
        }
    });

addGuide類(檢查代理是否缺失的代碼部分)

public class AddNGuideJD extends JDialog{

    private JLabel name, idNumber, salary, extra;
    private JTextField nameTF, idNumberTF, salaryTF, extraTF;
    private JButton okBtn, resetBtn, cancelBtn;

    private Guide guide;
    private TourAgency ta1;

    okBtn.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent ae)
            {
                if(ta1 != null)
                {
                    ...
                }

                else
                {
                    JOptionPane.showMessageDialog(null, "Please add a Tour Agency to countinue");
                }
            }
        });

因此,我的問題是,當我在addTourAgency類中創建旅行社並單擊addGuide類中的on按鈕時,為什么它總是彈出表示未創建旅行社的消息?(((JOptionPane.showMessageDialog(null,“請向國家添加旅行社“);)。我錯過了什么嗎?如何使用已經創建的對象?

使用getter和setter。
在創建AgencyTour的JDialog中,創建一個getAgencyTour函數,在下一個JDialog中,創建一個setAgencyTour函數,以傳遞上一個函數的結果。
您還可以將創建的AgencyTour從addTAJD作為參數傳遞給AddNGuideJD的構造AddNGuideJD

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM