0

ここに質問があります。私はJAppletを持っており、アプレットの中には2つのJPanel、panel1とpanel2があります。各パネルには「panel1」または「panel2」と表示されたラベルがあり、各パネルには「スイッチ」と呼ばれるボタンがあります。アプレットを実行するときは、panel1のみを表示したいと思います。そして、スイッチボタンをクリックすると、panel1が非表示(または非表示)になり、panel2が表示されます。また、panel2の切り替えボタンをクリックして、panel1に戻します。誰かがこれを手伝ってくれますか?

public class MyApplet extends JApplet
{
    private Panel1 panel1;
    private Panel2 panel2;

    public void init()
    {
        setLayout(new FlowLayout());

        panel1 = new Panel1();
        panel2 = new Panel2();

        add(panel1);
        //add(panel2);
    }
}

public class Panel1 extends JPanel
{
    private JLabel label;
    private JButton button;

    public Panel1()
    {
        setLayout(new FlowLayout());

        label = new JLabel("Panel1");
        button = new JButton("Switch1");

        add(label);
        add(button);
    }
}

public class Panel2 extends JPanel
{
    private JLabel label;
    private JButton button;

    public Panel2()
    {
        setLayout(new FlowLayout());

        label = new JLabel("Panel2");
        button = new JButton("Switch2");

        add(label);
        add(button);
    }
}
4

2 に答える 2

1

パネルのオンとオフを切り替えるアプレットに「コンテンツ」を追加します。

このパネルレイアウトマネージャーをに設定しますCardLayout

他のパネルを「コンテンツ」ペインに追加します

content.add(aPanel, "PanelA");
content.add(bPanel, "PanelB");

CardLayoutAPIを使用してパネルを切り替えます...

cardLayout.show(content, "PanelB");

詳細については、CardLayoutの使用方法をお読みください。

于 2012-10-23T20:26:48.813 に答える
0

それらの両方をアプレットに追加し、そのうちの1つにsetVisible(false)を追加します。

ボタンのリスナーを追加します。

リスナーは、適切なパネルのsetVisibleを切り替えます。

于 2012-10-23T19:51:48.233 に答える