0

私の番組はスーパーマーケットについてです。プログラムをコンパイルすると、JFrame ウィンドウ「f1」と「f2」の両方が画面に表示されます。ただし、JFrame ウィンドウ 'f1' を最初に表示してから、'f1' ウィンドウの JButton 'b1' をクリックした後、JFrame ウィンドウ 'f2' を表示したいと考えています。以下は、私のプログラムの delivery() メソッドです。

public static void delivery()
{
    final JFrame f1 = new JFrame("Name");
    GridLayout grid = new GridLayout(20, 40, 10, 8);
    f1.setLayout(grid);
    f1.setVisible(true);
    f1.setSize(600,200);
    f1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    f1.setLocation(700,450);

    JPanel p1 = new JPanel();

    final JLabel l1 = new JLabel("Enter your name: ");

    final JTextField jt1 = new JTextField(20);

    JButton b1 = new JButton("Ok");
    b1.addActionListener(new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
        {
            input1 = jt1.getText();
            f1.dispose();
        }
    });

    p1.add(b1);
    p1.add(l1);
    p1.add(jt1);
    f1.add(p1);

    final JFrame f2 = new JFrame("Address");
    f2.setVisible(true);
    f2.setSize(600,200);
    f2.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    f2.setLocation(700,450);

    JPanel p2 = new JPanel();

    final JLabel l2 = new JLabel("Enter your address: ");

    final JTextField jt2 = new JTextField(20);

    JButton b2 = new JButton("Ok");
    b2.addActionListener(new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
        {
            input2 = jt2.getText();
            f2.dispose();
        }
    });

    p2.add(b1);
    p2.add(l2);
    p2.add(jt2);
    f2.add(p2);

    JOptionPane.showMessageDialog(null, "The ordered stuff will be delivered to " +input1+ " who lives in: " +input2 , "Delivery" , JOptionPane.PLAIN_MESSAGE);
    JOptionPane.showMessageDialog(null, "Thank you for shopping at Paradise 24/7. Hope to see you again." , "Shopping Done!" , JOptionPane.PLAIN_MESSAGE);
}
4

3 に答える 3

0

次に、最初にJavaDocsを読み、Java 2 Complete Reference、O'Really などの Java 初心者向けの優れた電子ブックを読む必要があります - Java Swing が役に立ちます。

于 2013-07-01T07:59:58.690 に答える