Witam, robię grę kółko i krzyżyk, mam problem z obsługą myszy, aktualnie program powinien zwracać mi wiadomość "kliknieto" przy kliknięciu w okienku gry, jednak nic sie nie dzieje, ale kod się kompiluje. Jeżeli jest ktoś w stanie mi pomóc to będę bardzo wdzięczny.
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.ImageIcon;
import java.awt.Color;
import java.awt.Font;
import java.awt.Point;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.util.ArrayList;
import javax.swing.JTextField;
import javax.swing.JButton;
public class Kolko_krzyzyk extends JPanel implements MouseListener, MouseMotionListener{
/**
*
*/
ArrayList<Point> Punkty= new ArrayList<Point>();
private int x,y;
private static final long serialVersionUID = 1L;
private JFrame frame;
private JTextField textField_PlayerI;
private JTextField textField_PlayerII;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try
{
Kolko_krzyzyk window = new Kolko_krzyzyk();
window.frame.setVisible(true);
}
catch (Exception e)
{
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public Kolko_krzyzyk()
{
addMouseListener(this);
addMouseMotionListener(this);
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.getContentPane().setBackground(Color.WHITE);
frame.setBounds(100, 100, 650, 450);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JLabel label = new JLabel("");
label.setIcon(new ImageIcon("C:\\java\\Gra\\image\\plansza.PNG"));
label.setBounds(22, 42, 363, 333);
frame.getContentPane().add(label);
JLabel lblPlayerI = new JLabel("Player I:");
lblPlayerI.setFont(new Font("Tahoma", Font.BOLD, 14));
lblPlayerI.setBounds(437, 53, 66, 20);
frame.getContentPane().add(lblPlayerI);
JLabel lblPlayerIi = new JLabel("Player II:");
lblPlayerIi.setFont(new Font("Tahoma", Font.BOLD, 14));
lblPlayerIi.setBounds(437, 102, 66, 20);
frame.getContentPane().add(lblPlayerIi);
textField_PlayerI = new JTextField();
textField_PlayerI.setFont(new Font("Tahoma", Font.BOLD, 14));
textField_PlayerI.setBounds(513, 53, 86, 20);
frame.getContentPane().add(textField_PlayerI);
textField_PlayerI.setColumns(10);
textField_PlayerII = new JTextField();
textField_PlayerII.setBounds(513, 104, 86, 20);
frame.getContentPane().add(textField_PlayerII);
textField_PlayerII.setColumns(10);
JButton btnStart = new JButton("Start");
btnStart.setBounds(460, 290, 139, 46);
frame.getContentPane().add(btnStart);
}
@Override
public void mouseClicked(MouseEvent e) {
x=e.getX();
y=e.getY();
Punkty.add(new Point(x,y));
repaint();
JOptionPane.showMessageDialog(null, "kliknieto");
System.out.println("kliknieto");
}
@Override
public void mousePressed(MouseEvent e) {
System.out.println("kliknieto");
}
@Override
public void mouseReleased(MouseEvent e) {
System.out.println("kliknieto");
}
@Override
public void mouseEntered(MouseEvent e) {
System.out.println("kliknieto");
}
@Override
public void mouseExited(MouseEvent e) {
}
@Override
public void mouseDragged(MouseEvent e) {
}
@Override
public void mouseMoved(MouseEvent e) {
}
}