addActionListener nie działa

0

Tworzę sobię 41 ImagePanel'i napisanych z tym sposobem do wyświetlania obrazków na JPanel'u (nadpisaniem klasy), i niektóre metody, takie jak Layout'y i addActionListener nie działają :(
Jak to naprawić ??

0

a moglbys dokladnie umiescic kod?

0

nie działa, bo coś źle zrobiłeś... a tak serio - nie wróżymy tu z fusów, podaj więcej danych albo wątek wylatuje.

0

sory, myślałem, że ten kod jest oczywisty, bo jak inaczej wyświetlić obrazek na panelu :P
oto kod tej klasy:

public class ImagePanel extends JPanel implements Serializable {
    Image image = null;
	int index;
    public ImagePanel(Image image) {
        this.image = image;
    }
    public ImagePanel() {
        
    }
    public void setImage(Image image){
        this.image = image;
    }
    
    public Image getImage(Image image){
        return image;
    }
    
	public void setIndex(int index){
		this.index=index;
	}
	public int getIndex(){
		return index;
	}

    public void paintComponent(Graphics g) {
        super.paintComponent(g); //paint background
        if (image != null) { //there is a picture: draw it
            int height = this.getSize().height;
            int width = this.getSize().width;
            g.drawImage(image,0,0, width, height, this);
        }
    }
}

próbowałem nadpisać tą instrukcję (addActionListener) bezowocnie :(
tego listenera kod jest dobry, jeśli o to chodzi :)

0

Jeśli chodzi o addActionListener(), to w JPanel tej metody nie ma. JPanel nie obsługuje zdarzenia ActionEvent. Kliknięcie myszą można obsłużyć metodą addMouseListener(), przy użyciu MouseListener albo lepiej MouseAdapter...

Co do layout'u, to nie zauważyłem problemów... Metoda setLayout() jest i działa jak należy.

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