Robię tak jak mówicie, załączam cały kod:
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Date;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
public class JotFrame extends JFrame implements ActionListener
{
JButton przycisk, przycisk2, przycisk3;
JLabel wyświetlacz;
JLabel ludek, test;
JTextArea w2;
public JotFrame()
{
setSize(800, 600);
setTitle("Tytuł");
setLayout(null);
ImageIcon ikona = new ImageIcon("X:\\java\\Testy\\src\\ludzik2.PNG");
final ImageIcon ikona2 = new ImageIcon("X:\\java\\Testy\\src\\1.gif");
przycisk = new JButton(ikona);
przycisk.setBackground(Color.white);
przycisk.setBounds(50, 50, 100, 100);
add(przycisk);
przycisk.addMouseListener(new MouseListener()
{
public void mouseClicked(MouseEvent e) {
System.out.println("Kliknąłeś w obrazek");
}
public void mouseEntered(MouseEvent e) {
System.out.println(ikona2);
}
public void mouseExited(MouseEvent e) {
System.out.println("exited");
}
public void mousePressed(MouseEvent e) {
System.out.println("Przytrzymałeś");
}
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}}
);
przycisk.addActionListener(this);
przycisk.setBorder(null);
przycisk2 = new JButton("Wyjście");
przycisk2.setBounds(150, 50, 100, 100);
add(przycisk2);
przycisk2.addActionListener(this);
wyświetlacz = new JLabel ("Data:");
wyświetlacz.setBounds(50, 200, 500, 300);
wyświetlacz.setForeground(Color.red);
wyświetlacz.setFont(new Font ("SensSerif", Font.BOLD, 20));
add(wyświetlacz);
przycisk3 = new JButton("test");
przycisk3.setBounds(300, 200, 100, 100);
add(przycisk3);
przycisk3.addActionListener(this);
przycisk3.setVisible(false);
w2 = new JTextArea ();
w2.setBounds(500, 500, 100, 100);
test = new JLabel (ikona2);
test.setBounds(200, 200, 100, 100);
add(test);
test.addMouseListener(new MouseListener()
{
public void mouseClicked(MouseEvent e) {
System.out.println("Kliknąłeś w obrazek");
}
public void mouseEntered(MouseEvent e) {
System.out.println(ikona2);
}
public void mouseExited(MouseEvent e) {
System.out.println("exited");
}
public void mousePressed(MouseEvent e) {
System.out.println("Przytrzymałeś");
}
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}});
}
public static void main(String[] args)
{
JotFrame okno = new JotFrame();
okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
okno.setVisible(true);
}
public void actionPerformed(ActionEvent arg0)
{
Object Źródło = arg0.getSource();
if (Źródło==przycisk)
{
wyświetlacz.setText(new Date().toString());
//System.out.println(new Date());
}
else if (Źródło==przycisk2)
{
dispose();
}
else if (Źródło==przycisk3)
{
wyświetlacz.setText(new Date().toString());
}
else if (Źródło==test)
{
test.setVisible(true);
w2.setText(ikona2);
}
}}
Próbowałem już dodać MouseListener do JButtona ale też nic nie wychodzi....
EDIT: Rozumiem, że MouseListener nie ma związku z actionPerformed (choć nie wiem czemu ale powiedzmy że rozumiem) i logicznie myśląc dochodzę do wniosku, że przy moim "JLabel" brakuje "addActionListener(this)" tylko, że eclipse mówi mi, że "The method addActionListener(JotFrame) is undefined for the type JLabel".
EDIT: setText jak się domyślam jest do tekstu a jak wyświetlić obraz?