繁体   English   中英

Jframe到Jframe变量

[英]Jframe to Jframe variables

我将nameS保存到字符串中并写入文件,但是在下一个窗口中,它弹出并显示一条成功消息,我希望能够将变量nameS中给定的名称用于成功窗口。 不知道如何通过它。

public void setPanels()
{
    mainPanel = new JPanel(new GridLayout(0, 2));
    JPanel containerPanel = new JPanel(new GridLayout(0, 1));
    JPanel lowerPanel = new JPanel(new FlowLayout());
    JPanel errorPanel = new JPanel(new FlowLayout());
    JButton apply = new JButton("PAY");
    JButton cancel = new JButton("Cancel");
    cancel.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e){
            dispose();
        }
    });
    apply.addActionListener(new ActionListener()
    {

        public void actionPerformed(ActionEvent e)
        { 
            errorMessage= "";
            safetyMessage= "";

            String timestamp = new java.text.SimpleDateFormat("MM/dd/yyyy h:mm:ss a").format(new Date());
            String ammountS = ammountField.getText();
            String nameS = nameField.getText();
            String billingAddressS = billingAddressField.getText();
            String cardNameS = cardNameField.getText();
            String cardNumberS = cardNumberField.getText();
            String expiryDateS = expiryDateField.getText();

            if(ammountS.matches("[a-zA-Z]+")){
                safetyMessage += "Top Ammount invalid<br/>";
            }else{errorMessage += "";}
            if(ammountS == null || ammountS.isEmpty()){
                safetyMessage += "Please Enter an Ammount!<br/>";
            }else{errorMessage += "";}
            if(nameS == null || nameS.isEmpty()){
                safetyMessage += "Please Enter an Name!<br/>";
            }else{errorMessage += "";}
            if(billingAddressS == null || billingAddressS.isEmpty()){
                safetyMessage += "Please Enter a Billing Address!<br/>";
            }else{errorMessage += "";}
            if(cardNameS == null || cardNameS.isEmpty()){
                safetyMessage += "Please Enter a Card Name!<br/>";
            }else{errorMessage += "";}
            if(cardNumberS == null || cardNumberS.isEmpty()){
                safetyMessage += "Please Enter a Card Number!<br/>";
            }else{errorMessage += "";}
            if(expiryDateS == null || expiryDateS.isEmpty()){
                safetyMessage += "Please Enter a Expiry Date!<br/>";
            }else{errorMessage += "";}

            if (safetyMessage == ""){
                errorMessage += "Successfully Topped Up With: $"+ ammountS;
                balanceAmmount(nameS);
                errorField.setText(errorMessage);
                errormsg = true;
            }else{
                errorMessage += "<html>";
                errorMessage += safetyMessage;
                errorMessage += "</html>";
                errorField.setText(errorMessage);
            }

            if (errormsg == true){
            WriterFile("######## START OF TRANSACTION ########\n","TopUp.txt");
            WriterFile("Name: "+ nameS+"\n","TopUp.txt");
            WriterFile("DATE: "+ timestamp+"\n","TopUp.txt");
            WriterFile("Ammount: "+ ammountS+"\n","TopUp.txt");
            WriterFile("CardName: "+ cardNameS+"\n","TopUp.txt");
            WriterFile("Address: "+ billingAddressS+"\n","TopUp.txt");
            WriterFile("Card Number: "+ cardNumberS+"\n","TopUp.txt");
            WriterFile("ExpiryDate: "+ expiryDateS+"\n","TopUp.txt");
            WriterFile("######## END OF TRANSACTION ########\n","TopUp.txt");

            topUpAlertWindow TopUpAlertWindow = new topUpAlertWindow();
                //balanceAmmount(nameS);
            //i am trying to pass in nameS into here.
            //dispose();
            }
        }
    });

我想将nameS变量发送到下一个Java文件中

import javax.swing.*;
import java.awt.Dialog.ModalityType;
import java.awt.event.*;
import java.awt.*;
import java.io.*;
import java.util.*;

class topUpAlertWindow extends JDialog
{
public topUpAlertWindow(){
    setPanels();

    setModalityType(ModalityType.APPLICATION_MODAL);
    setSize(500, 250);
    setVisible(true);
}

private JPanel mainPanel;

public void setPanels()
{
    mainPanel = new JPanel(new GridLayout(0, 2));
    JPanel containerPanel = new JPanel(new GridLayout(0, 1));
    JPanel lowerPanel = new JPanel(new FlowLayout());
    JPanel errorPanel = new JPanel(new FlowLayout());
    JLabel successfulMessage = new JLabel("Successfully Toped UP");
    JButton apply = new JButton("Okay");
    JButton cancel = new JButton("Cancel");
    cancel.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e){
            dispose();
        }
    });

    apply.addActionListener(new ActionListener()
    {

        public void actionPerformed(ActionEvent e)
        { 
            dispose();


        }
    });

    mainPanel.add(successfulMessage);

    lowerPanel.add(apply);
    //lowerPanel.add(cancel);


    containerPanel.add(mainPanel);
    containerPanel.add(lowerPanel);
    containerPanel.add(errorPanel);

    add(containerPanel);
}
}

在头等舱:

topUpAlertWindow TopUpAlertWindow = new topUpAlertWindow(nameS);

在第二个类中,更改构造函数:

public topUpAlertWindow(String nameS){
    setPanels();

    setModalityType(ModalityType.APPLICATION_MODAL);
    setSize(500, 250);
    setVisible(true);
}

在构造函数中,您可以使用名称显示Label或其他内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM