小伙伴们是不是曾经在网上的视频上看到过那些让别人在一个窗体里点击不到按钮的视频呢,今天我们就来实现一下
废话不多说了,咱们上代码,都解释的好清楚了,感兴趣的小伙伴可以看一下
package ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class MoveButterDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
new MoveTest1("小笼包");
}
}
class MoveTest1 extends JFrame{
//创建五个属性
private static JFrame jFrame = null;
private static JButton jButton = null;
private static int x=150;
private static int y=150;
private static int count = 1;
public MoveTest1(String title) {
// TODO Auto-generated constructor stub
//创建一个窗体
jFrame = new JFrame("title");
//设置大小
jFrame.setBounds(200, 200, 500, 500);
//让窗体可见
jFrame.setVisible(true);
//创建 一个可见的按钮
jButton = new JButton();
//设置按钮的大小
jButton.setBounds(150, 50, 20, 20);
//将按钮加到窗体组件之中
jFrame.add(jButton);
//设置窗体不可关闭
jFrame.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
//创建一个匿名内部类,通过addMouseListener添加实现了MouseAdapter接口的鼠标事件
jButton.addMouseListener(new MouseAdapter() {
//当鼠标进入按钮区域的时候就会执行以下代码
public void mouseEntered(MouseEvent e) {
//通过count变量进行累加进行求余,让按钮不会在同一个方向进行改变
if(count%2==0) {
jButton.setBounds(x, y, 20, 20);
x-=20;
y+=40;
count++;
}else {
jButton.setBounds(x, y, 20, 20);
x+=20;
y-=40;
count++;
}
}
}
);
//这里是为了测试我们鼠标到底会不会点击到我们的按钮,经过小编的测试,并不会点击到
jButton.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
System.out.println("按钮被点击");
}
});
}
}
*```嘿嘿,有木有看见小编在最后测试了一下*