Итак, мы должны сделать экран бронирования для нашей авиакомпании. После того, как пользователь вводит свою информацию и нажимает на «Сохранить мой код», необходимо показать ей информацию в отдельном фрейме. У меня установлен фрейм, мне просто нужно передать информацию в JTextField в фрейм на JLabel. Я слышал, что мне нужно превратить его в переменную, чтобы я мог использовать ее в нескольких местах. Я новичок в Java, поэтому, пожалуйста, не используйте слова, которые, возможно, не знакомы. Спасибо, и вот мой код. У меня 3 класса.Как перенести данные в JTextField в JLabel?
Первый класс:
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TicketMan {
public static void main(String[] args) {
JFrame frame = new JFrame ("Airport");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
TicketManBot panel = new TicketManBot();
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true); } }
второго класса (класс поля находятся на
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Random;
public class TicketManBot extends JPanel {
private JLabel name;
private JLabel dest;
private JLabel depc;
private JLabel dept;
private JLabel seat;
private JButton b;
Random rand = new Random();
private JTextField namef, destf, depcf, deptf;
public TicketManBot()
{
name = new JLabel ("Enter passenger's name:");
dest = new JLabel ("Destination: ");
depc = new JLabel ("Departure city: ");
dept = new JLabel ("Departure time: ");
seat = new JLabel ("Seat Number: " + rand.nextInt(100));
b = new JButton ("Make Reservation");
b.addActionListener (new results());
// the fields I need to move
namef = new JTextField (10);
destf = new JTextField (10);
depcf = new JTextField (10);
deptf = new JTextField (10);
add (name);
add (namef);
add (dest);
add (destf);
add (depc);
add (depcf);
add (dept);
add (deptf);
add (seat);
add (b);
setPreferredSize (new Dimension(200, 300));
setBackground (Color.gray);
}
private class results implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
int resultLabel;
String text = namef.getText();
JFrame results = new JFrame("Thank you for flying with JJ Air");
results.setVisible(true);
results.setSize (200, 300);
// I need to move the fields up there in front of these VVVVVV
JLabel nr = new JLabel ("Name of the passenger:");
JLabel dr = new JLabel ("Destination:");
JLabel depr = new JLabel ("Departure city:");
JLabel dpr = new JLabel ("Departure time:");
JLabel sr = new JLabel ("Seat number:");
JLabel t = new JLabel ("Thank you for flying with us");
JLabel label = new JLabel ("");
JPanel panel = new JPanel();
results.add(panel);
panel.add (nr);
panel.add (dr);
panel.add (depr);
panel.add (dpr);
panel.add (sr);
panel.add (t);
}
}
}
третьего класса:.
import javax.swing.JPanel;
import java.awt.*;
import java.awt.event.*;
public class results extends JPanel {
}
1) Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). 2) Единственная пустая строка пробела в исходном коде * всегда * достаточно. Пустые строки после '{' или before '}' также типично избыточны. –
'' Я новичок в Java, поэтому, пожалуйста, не используйте слова, которые, возможно, не знакомы ».' - Не могли бы вы перечислить слова, с которыми вы, возможно, не знакомы? Возможно, вам лучше попросить разъяснить любой ответ, который вас смущает. :/ –