많은 사람들이 글을 올리고 사람들이 답변을 읽었을 때, 나는 아직도 자바에서 데이터가 어떻게 전달되는지 알지 못한다. 여기에 사용자가 나이, 키, 몸무게 및 두 번째 프레임을 여는 버튼을 입력해야하는 간단한 코드가 있습니다.JFrame 1에서 다른 JFrame으로 데이터를 가져 오는 방법은 무엇입니까?
첫 프레임
public Collectdata()
{
JPanel text = new JPanel();
text.add(jage);
text.add(age);
text.add(jheight);
text.add(height);
text.add(jweight);
text.add(weight);
text.setLayout(new GridLayout(3,2));
JPanel jbutt = new JPanel();
jbutt.add(next);
setLayout(new BorderLayout());
add(text,BorderLayout.CENTER);
add(jbutt,BorderLayout.SOUTH);
next.addActionListener(this);
}
public static void main(String[] args)
{
Collectdata GUI = new Collectdata();
GUI.setTitle("DataCollection"); //Set title
GUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //close program
GUI.setSize(250,150);
GUI.setVisible(true);
}
public void actionPerformed(ActionEvent a)
{
if(a.getSource() == next)
{
Calculate secondwind = new Calculate(this);
secondwind.setTitle("Calculate"); //Set title
secondwind.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //close program
secondwind.setSize(350,150);
secondwind.setVisible(true);
this.setVisible(false);
}
}
}
그리고이 버튼을 클릭 한 후 표시됩니다 2 프레임입니다.
2 프레임
public Calculate(Collectdata collectdata)
{
this.collectdata = collectdata;
JPanel text = new JPanel();
text.add(jage);
text.add(age);
text.add(jheight);
text.add(height);
text.add(jweight);
text.add(weight);
text.setLayout(new GridLayout(3,2));
age.setEditable(false);
height.setEditable(false);
weight.setEditable(false);
setLayout(new BorderLayout());
add(text,BorderLayout.CENTER);
}
나는 JFrame의에서 키가 데이터가 2 JFrame의 일부 계산을 위해 데이터를 사용까지 통과 할 수 있도록 얻을 수 같은 것입니다
.
어떻게하면됩니까?
감사합니다.
http://stackoverflow.com/q/9554636/1702990 가능성이 있습니까? – Sinkingpoint
일반적으로 사용자에게 정보를 요청하거나 묻는 경우, 일종의 대화 상자를 사용합니다. 단명이고 일회용 윈도우입니다. 사용자의 소량의 정보를 수집하거나 질문을하거나 또는 어떤 종류의 유익한 통지를 제공 할 수 있습니다. 자세한 내용은 [대화 상자 작성 방법] (http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html)을 참조하십시오. – MadProgrammer