Hallo ich habe einen MouseListener gemacht der allerdings nur bei Doppelklick funktioniert ich möchte aber das er bei einem normalen Klick die Klicks zählt und dann das ausführt was ich möchte mit den anderen Methoden von MouseListenern
das ist der Code der auf dieser GUI reagieren soll...
- mouseClicked(MouseEvent e): Wird ausgeführt, wenn die Maus vom Benutzer geklickt wurde.
- mouseEntered(MouseEvent e): Wird ausgeführt, wenn die Maus eine Komponente betritt.
- mouseExited(MouseEvent e): Wird ausgeführt, wenn die Maus eine Komponente verlässt.
- mousePressed(MouseEvent e): Wird ausgeführt, wenn eine Maustaste über einer Komponente gedrückt wurde.
Java:
public void mouseReleased(MouseEvent e) {
if (schiffesetzen == 0) {
((Component) e.getSource()).setBackground(Color.BLACK);
schiffesetzen = 3;
}
else {
JOptionPane.showMessageDialog(Spielfeld, "Sie haben alle Schiffe gesetzt los gehts!");
setVisible(false);
das ist der Code der auf dieser GUI reagieren soll...
Java:
package Schiffeversenken;
import java.awt.Color;
import java.awt.Component;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.rmi.Remote;
import java.rmi.RemoteException;
import javax.security.auth.callback.Callback;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import Schiffe.GUI.PrintField;
public class GUI extends JFrame implements ActionListener ,MouseListener{
private static final long serialVersionUID = 1L;
public static Spieler[] Spieler = new Spieler[1];
private JLabel Tietel;
private JLabel Name;
private JLabel Name2;
private JButton Start1;
private JButton Beenden;
static JTextField textName;
static JTextField textName2;
public GUI() {
this.setTitle("Schiffe versenken" + Spieler);
this.Tietel = new JLabel("Willkommen zum Schiffeversenken");
this.Name = new JLabel("Name 1");
this.Name2 = new JLabel("Name 2");
this.Start1 = new JButton("Start");
this.Beenden = new JButton("Beenden");
this.textName = new JTextField();
this.textName2 = new JTextField();
new JTextField();
this.setVisible(true);
Beenden.addActionListener(this);
add(Beenden);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(500, 500);
this.setLayout(new GridBagLayout());
this.ordneAn();
this.Listenererstellen();
this.setVisible(true);
}
public void ordneAn() {
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.HORIZONTAL;
c.insets = new Insets(4, 4, 4, 4);
c.gridx = 0;
c.gridy = 0;
c.gridwidth = 0;
this.getContentPane().add(Tietel, c);
c.gridx = 0;
c.gridy = 1;
this.getContentPane().add(Name, c);
c.gridx = 0;
c.gridy = 2;
c.gridwidth = 3;
this.getContentPane().add(textName, c);
c.gridx = 2;
c.gridy = 1;
this.getContentPane().add(Name2, c);
c.gridx = 2;
c.gridy = 2;
c.gridwidth = 2;
this.getContentPane().add(textName2, c);
c.gridx = 0;
c.gridy = 3;
c.gridwidth = 1;
this.getContentPane().add(Start1, c);
c.gridx = 3;
c.gridy = 3;
c.gridwidth = 1;
this.getContentPane().add(Beenden, c);
}
@Override
public void actionPerformed(ActionEvent ae) {
Object object = ae.getSource();
if (object.equals(Beenden)) {
System.exit(0);
}
}
public void Listenererstellen() {
Start1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Spielfeld feld1 = new Spielfeld();
Spielfeld feld2 = new Spielfeld("baba");
Schiff schiffe = new Schiff();
schiffe.buttonsFürSchiffeSetzen();
}
});
}
public void mouseClicked(MouseEvent arg0) {
// TODO Automatisch generierter Methodenstub
}
@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Automatisch generierter Methodenstub
}
@Override
public void mouseExited(MouseEvent arg0) {
// TODO Automatisch generierter Methodenstub
}
@Override
public void mousePressed(MouseEvent arg0) {
// TODO Automatisch generierter Methodenstub
}
@Override
public void mouseReleased(MouseEvent arg0) {
// TODO Automatisch generierter Methodenstub
}
}