Przycisk otwiera nowe okno

0

Mam problem z programem, którego zadaniem byłoby otwarcie nowego okna po przyciśnięciu przycisku. Napisałem taki kod:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class Ramka extends JFrame{

	JButton b = new JButton("Open");
	JPanel panel = new JPanel();
    JDesktopPane desktop;

	public Ramka(){
		super("Tytuł na belce okna");
		panel.add(b);
		setContentPane(panel);
		setSize(500,300);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setVisible(true);
    }

   public void open(ActionEvent e){
        desktop = new JDesktopPane();
        createFrame();
        setContentPane(desktop);
   }

   public void createFrame() {
        JInternalFrame frame = new JInternalFrame();
        frame.setVisible(true); 
        desktop.add(frame);
        setContentPane(frame);
        try {
            frame.setSelected(true);
        } catch (java.beans.PropertyVetoException e) {}

    }

	public static void main(String[] args){
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Ramka().setVisible(true);
            }
        });
	}
}

Korzystałem z tutoriala na sunie jednak nie za bardzo wiem, co ja tutaj zle robie. Zreszta jestem bardzo newbie jezeli chodzi o jave.

0

na pierwszy rzut oka widać, że nie dołączyłeś listenera do przycisku b np możesz dodać coś takiego

 b.addActionListener(new ActionListener() {
				
					@Override
					public void actionPerformed(ActionEvent arg0) {
						open();
				
					}
				});
0

Po wstawieniu kod wyglada takimport java.awt.*;
...

public Ramka(){
	super("Tytuł na belce okna");
	panel.add(b);
	setContentPane(panel);
	setSize(500,300);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setVisible(true);
}

b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
open();
}
});

public void open(){
desktop = new JDesktopPane();
createFrame();
setContentPane(desktop);
}
...


i wyskakuje mi błąd:

init:
deps-jar:
Compiling 1 source file to C:\Users\Mateusz\Documents\NetBeansProjects\JavaApplication17\build\classes
C:\Users\Mateusz\Documents\NetBeansProjects\JavaApplication17\src\Ramka.java <identifier> expected
b.addActionListener(new ActionListener() {
1 error
BUILD FAILED (total time: 0 seconds)


Dzieki.  Juz w porzadku. Nie w to miejsce wstawilem kod.

1 użytkowników online, w tym zalogowanych: 0, gości: 1