单击添加图标到JFrame

时间:2014-02-13 04:32:47

标签: java swing click jframe

有一个JFrame,每当点击它上面的任何位置时,它就会出现一个特定的图标。 我怎样才能做到这一点?

任何人都可以向我展示解决或编写示例的想法。

1 个答案:

答案 0 :(得分:1)

您可以在MouseListener的帮助下实现这一目标,请尝试下一个示例:

import java.awt.Cursor;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Example extends JFrame{

    private JPanel pane;

    public Example(){
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        addMouseListener(getListener());
        setSize(200,200);
        pane = (JPanel) getContentPane();
        setVisible(true);
    }

    private MouseListener getListener() {
        return new MouseAdapter() {
            @Override
            public void mousePressed(MouseEvent e) {
                super.mousePressed(e);
                pane.setCursor(Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR));
            }

            @Override
            public void mouseReleased(MouseEvent e) {
                super.mouseReleased(e);
                pane.setCursor(Cursor.getDefaultCursor());
            }
        };
    }

    public static void main(String... s){
        new Example();
    }

}