Хорошо, я пытаюсь использовать MouseListener в первый раз, но мне не очень повезло. Моя программа компилируется отлично, но события MouseListener, похоже, ничего не делают. Вот мой код:Не удается заставить MouseListener работать
import java.awt.color.*;
import java.awt.font.*;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class yo implements MouseListener {
Image image;
JFrame frame = new JFrame();
JLabel heloo = new JLabel("yo");
JPanel panel = new JPanel()
{
@Override
public void paintComponent(Graphics g)
{
//super.paintComponent(g);
//ImageIcon i = new ImageIcon("hi.jpg");
//image = i.getImage();
//g.drawImage(image,150,150,null);
//g.drawString("Hello",100,100);
//g.drawString("Hi",50,50);
}
};
public yo()
{
frame.add(panel);
frame.setTitle("Hello");
frame.setSize(500,500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLocationRelativeTo(null);
panel.add(heloo);
}
public void mouseClicked (MouseEvent Event)
{
heloo.setText("Hi");
System.out.println("Hi");
}
public void mouseEntered (MouseEvent Event)
{System.out.println("Hi");}
public void mouseExited (MouseEvent Event)
{}
public void mousePressed (MouseEvent Event)
{}
public void mouseReleased (MouseEvent Event)
{}
public static void main(String[] args)
{
new yo();
}
}
По все, что я имею в виду, что система не выводит текст в командную строку или изменить JLabel не делать.
Любая помощь в том, как заставить его работать, было бы здорово, спасибо.
p.s. Я - нуб, будь добр.
Я не вижу где-нибудь, что вы зарегистрировать слушателя мыши? Попробуйте что-то вроде heloo.addMouseListener (new yo()); – MadProgrammer
Я только что заработал, не волнуйся. Я просто добавил frame.addMouseListener (это); –