Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Java - MouseEntered/MouseExited - opakované volání - PROSÍM O RADU

Dobrý den,

Vytvořil jsem si proměnou Mouse Listener

MouseListener mouse_listener = new MouseAdapter() {

@Override
public void mouseEntered(java.awt.event.MouseEvent evt) {
Panel panel = (Panel) evt.getSource();
board[Methods.row][Methods.column].setVisible(fals e);
Methods.row = panel.getRow();
Methods.column = panel.getColumn();
}

@Override
public void mouseExited(java.awt.event.MouseEvent evt) {
board[Methods.row][Methods.column].setVisible(true );
}
}

Ten jsem potom přiřadil všem prvkům.

for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
board[i][j] = new Panel(height, i, j);
board[i][j].addMouseListener(mouse_listener);
getContentPane().add(board[i][j]);
}
}

Při najetí na panel by se měl logicky zavolat mouseEntered a při odchodu mouseExited.

Jenže, když kurzorem přejíždím po jednom panelu, tak při každém pohybu myši se střídavě volá mouseEntered/MouseExited - Střídavě se zapíná/vypíná u panelu visible.

Tento jev se mi nikdy předtím nestal a nechápu, v čem je problém.

Prosím o radu.

Předem děkuji

PS. Snažil jsem se to napsat co nejjednodušeji, takže se omlouvám, pokud je něco nesrozumitelné. Případné nesrozumitelnosti vysvětlím.

Předmět Autor Datum
Už jsem na to došel, když nastavím setVisible false, tak se automaticky zavolá MouseExit. poslední
MichalDM 24.02.2017 11:23
MichalDM

Zpět do poradny Odpovědět na původní otázku Nahoru