0

私はプロジェクトに取り組んでいます。パネル クラスでは、デスクトップ ペインで 2 番目の iframe を呼び出すために mouselistener を定義しましたが、表示されませんか?

助けてくださいありがとう

メインクラス

    public class Try2 extends JFrame{

JTabbedPane pane;
public Try2() {

    setSize(800,500);
    setDefaultCloseOperation(Try2.EXIT_ON_CLOSE);
    setVisible(true);


    pane=new JTabbedPane();
    pane.addTab("First", new desktoppane());
    pane.addTab("Second", new JPanel());


    setContentPane(pane);

}
public static void main(String[] args) {
    new Try2();
}

DesktopPane クラス

    public class desktoppane extends JDesktopPane{

public desktoppane() {
   // setOpaque(false);
    JButton btnfirst=new JButton("First IFrame");
    btnfirst.setSize(150,25);
    add(btnfirst);
    btnfirst.addMouseListener(new MouseListener() {

        @Override
        public void mouseClicked(MouseEvent e) {

         first f=new first();
         add(f);
        }

        @Override
        public void mousePressed(MouseEvent e) {
        }

        @Override
        public void mouseReleased(MouseEvent e) {
        }

        @Override
        public void mouseEntered(MouseEvent e) {
        }

        @Override
        public void mouseExited(MouseEvent e) {
        }
    });

}

}

最初の IFrame

    public class first extends JInternalFrame{

public first() {
    setSize(400, 400);
    setVisible(true);
    setClosable(true);

    add(new paneel());

}

}

パネル クラス

    public class paneel extends JPanel{

public paneel() {
    setBackground(Color.red);
    setSize(200,200);
    JButton btnSecond=new JButton("Second IFrame");
    btnSecond.setSize(150,25);
    add(btnSecond);

    btnSecond.addMouseListener(new MouseListener() {

        @Override
        public void mouseClicked(MouseEvent e) {
          Second s=new Second();
          desktoppane p=new desktoppane();

          p.add(s);


        }

        @Override
        public void mousePressed(MouseEvent e) {
         }

        @Override
        public void mouseReleased(MouseEvent e) {
        }

        @Override
        public void mouseEntered(MouseEvent e) {
        }

        @Override
        public void mouseExited(MouseEvent e) {
        }
    });




}

}

2 番目の IFrame

    public class Second extends JInternalFrame{

public Second() {
    setSize(400, 400);
    setVisible(true);
    setClosable(true);

    setBackground(Color.yellow);
}

}

4

1 に答える 1