-1

私は宿題をしています。これは、ユーザーに 2 つの部屋のどちらかを選択するように求め、その部屋に特定の週数滞在するのにかかる費用を計算するものです。

だから私は、部屋の中から選択するように求めることからプログラムを開始し、その選択が行われた後、ユーザーに特定の週数を入力させ、部屋の費用に週数を掛けさせようとしています.

コードの最初の部分は完了したと思いますが、2 番目の部分を作成する方法がまったくわかりません。

これが私がこれまでに持っているものです:

public class hotel extends JFrame {
JCheckBox b1, b2, b3;
JPanel p1;
JLabel l;
JTextField t;

hotel() {
    setTitle("Hotel Room Selection");
    setSize(300,400);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    l = new JLabel("Hotel.");
    t = new JTextField("Select a room type");

    b1 = new JCheckBox("b1");
    b2 = new JCheckBox("b2");
    b3 = new JCheckBox("b3");
    setLayout(new FlowLayout());
    p1.add(b1);
    p1.add(b2);
    p1.add(b3);
    p1.add(l);
    p1.add(t);

    b1.addItemListener(new cbListener());
    b2.addItemListener(new cbListener());
    b3.addItemListener(new cbListener());   

    setVisible(true);
}

class cbListener implements ItemListener{
    public void itemStateChanged(ItemEvent b)   
    {
        if(b.getSource() == b1)
        {
            if (b1.isSelected())
            {   
                int room1 = 600;
            }

        }
        else if (b.getSource() == b2)
        {
            if (b2.isSelected())
            {   
                int room2=850;
            }

        }
         if (b.getSource() == b3)
        {
            if (b3.isSelected())
            {   
                int boat=60;
            }

            }   
        }

    }

public static void main(String [] args)
{
        Hotel a1 = new Hotel();
}}
4

2 に答える 2

0

まず、ユーザーにダンプするフレーム/ウィンドウの数を制限する必要があります。複数の JFrame の使用: 良いプラクティスか悪いプラクティスか? を参照してください。いくつかの詳細については。

代わりに、各「画面」を個別に作成し、必要に応じてこれらのビューを切り替えるためにJPanela のようなものを使用します。CardLayout

于 2013-08-02T01:25:50.840 に答える