1

您将如何处理扩展 JPanel 的自定义摆动组件中的单击。我正在制作游戏,我想知道如何处理点击。特别是在与gui不同的线程中,并且绘画?我将如何做到这一点是我的代码:

  package com.games.bubblecards;

    import java.awt.Graphics;
    import java.awt.Graphics2D;

    import javax.swing.JPanel;

    public class Canvas extends JPanel {
        private static final long serialVersionUID = 1L;

        public Canvas() {
            super();
        }

        public void paint(Graphics g) {
            Graphics2D g2d = (Graphics2D)g;
            g2d.drawString("Hello It Works", 10, 10);
        }

}
4

1 回答 1

2

您可以通过向组件添加 MouseListener 来处理鼠标点击,这对于标准 Swing 组件或扩展 Swing 组件的自定义组件没有什么不同。鼠标侦听器的方法必须在 Swing 主线程、EDT 上调用(默认情况下这是不需要特殊代码的情况),但是侦听器代码可以在需要时设置和启动后台线程。

于 2011-04-03T18:30:24.533 回答