java鼠标点击事件
❶ java 鼠标点击事件
package click;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GUI {
JFrame frame ;
JPanel panel ;
public GUI() {
this.frame = createFrame() ;
this.panel = createPanel() ;
frame.add(panel);
frame.setSize(600,600);
frame.setLocation(100,100);
frame.setVisible(true);
}
private JPanel createPanel() {
JPanel p = new JPanel() ;
final JPanel pp = createPanelNew() ;
JButton b1 = new JButton("显示") ;
b1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("显示");
pp.setVisible(true) ;
}
}) ;
JButton b2 = new JButton("隐藏") ;
b2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("隐藏");
pp.setVisible(false) ;
}
}) ;
p.add(pp) ;
p.add(b1) ;
p.add(b2) ;
return p;
}
private JPanel createPanelNew() {
JPanel p = new JPanel() ;
p.setBackground(new Color(255, 100, 0)) ;
p.setVisible(false) ;
return p;
}
private JFrame createFrame() {
JFrame f = new JFrame("隐藏面板测试") ;
return f;
}
public static void main(String[] args) {
new GUI() ;
}
}
❷ 用java写一个单击鼠标事件
使用组件的paint函数用于绘图, 使用MouseListener来响应鼠标的点击
效果图
importjava.awt.Color;
importjava.awt.Graphics;
importjava.awt.event.*;
importjavax.swing.*;
{
publicDemoWin(){
=newMyPanel();
mp.addMouseListener(mp);
add(mp);
//窗口属性设置
setTitle("Demo");//标题
setSize(300,280);//窗口大小
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//窗口点击关闭时,退出程序
}
publicstaticvoidmain(String[]args){
DemoWinwin=newDemoWin();//创建窗口
win.setVisible(true);//显示窗口
}
{
inttimes;//记录点击的次数
intx;//记录鼠标X轴的位置
inty;//记录鼠标Y轴的位置
@Override
publicvoidpaint(Graphicsg){
super.paint(g);
if(times==0){
g.setColor(Color.BLUE);//颜色
g.fillOval(150,150,50,50);//150,150代表位置50,50代表宽高
}elseif(times==1){
g.setColor(Color.RED);
g.fillRect(150,150,50,50);
}else{
g.setColor(Color.RED);
g.fillRect(x,y,50,50);
}
repaint();
}
publicvoidmouseClicked(MouseEvente){
//if(e.getButton()==MouseEvent.BUTTON1){//单击左键时有效..
//times++;//记录点击的次数
//x=e.getX();
//y=e.getY();
//}
}
publicvoidmousePressed(MouseEvente){//鼠标按下就有效
times++;//记录点击的次数
x=e.getX();
y=e.getY();
}
publicvoidmouseReleased(MouseEvente){//鼠标释放
}
publicvoidmouseEntered(MouseEvente){//鼠标移入
}
publicvoidmouseExited(MouseEvente){//鼠标移出
}
}
}
❸ JAVA鼠标双击事件
ava 没有直接获取鼠标双击事件的方法,因此我们可以在用户每发生单击事件时延时执行,
当时间在这段时间内用户又一次发生了单击事件,那么就直接执行双击事件,取消上次的单击事件
package com.aowin.stuff.Lisnter;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class MyMouseListener extends MouseAdapter {
private static boolean flag = false;
// 用来判断是否已经执行双击事件
private static int clickNum = 0;
// 用来判断是否该执行双击事件
@Override
public void mouseClicked(MouseEvent e) {
// final MouseEvent me = e;
MyMouseListener.flag = false;
System.out.println(clickNum);
if (MyMouseListener.clickNum == 1) {// 1时执行双击事件
System.out.println("执行双击事件");
MyMouseListener.clickNum = 0;
MyMouseListener.flag = true;
return;
}
// 定义定时器
Timer timer = new Timer();
// 定时器开始执行,延时0.2秒后确定是否执行单击事件
timer.schele(new TimerTask() {
private int n = 0;
// 记录定时器执行次数
@Override
public void run() {
if (MyMouseListener.flag) {
MyMouseListener.clickNum = 0;
this.cancel();
return;
}
if (n == 1) {
System.out.println("执行单击事件");
MyMouseListener.flag = true;
MyMouseListener.clickNum = 0;
n = 0;
this.cancel();
return;
}
clickNum++;
n++;
System.out.println("第" + n);
System.out.println(clickNum);
}
}, new Date(), 200);
//上边的意思是,单击第一次会运行一次run方法clickNum 会加1,然后0.2秒后再执行Run方法 //如果在这0.2秒中间用户又单击了事件,那就会运行开头的双击事件
}
}
❹ Java 程序实现鼠标点击 键盘等事件
用 Robot 类的如下方法:
void keyPress(int keycode)
按下给定的键。
void keyRelease(int keycode)
释放给定的键。
void mouseMove(int x, int y)
将鼠标指针移动到给定屏幕坐标。
void mousePress(int buttons)
按下一个或多个鼠标按钮。
void mouseRelease(int buttons)
释放一个或多个鼠标按钮。
void mouseWheel(int wheelAmt)
在配有滚轮的鼠标上旋转滚轮。
❺ java 代码操作鼠标点击
Onclick()?
你是说Java 代码 还是 js 代码啊/
js 的话你可以 使用定时任务那样的 传递一个函数,一个时间 他就会调用那个你传递的函数
请点赞。
❻ Java鼠标双击事件
是你的判断有问题吧,没判断当前窗体是否是最大化,不知道理解的对不对。
importjavax.swing.*;
importjava.awt.event.*;
importjava.awt.*;
{
=1L;
booleanIS_MAXIMIZED=false;
publicMouseDemo(){
super("DoubleClickDemo");
this.addMouseListener(newMouseAdapter(){
publicvoidmouseClicked(MouseEvente){
if(e.getClickCount()==2){
if(IS_MAXIMIZED){
setExtendedState(JFrame.NORMAL);
IS_MAXIMIZED=false;
}else{
setExtendedState(JFrame.MAXIMIZED_BOTH);
IS_MAXIMIZED=true;
}
}
}
});
this.setSize(newDimension(200,150));
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
publicstaticvoidmain(Stringargs[]){
newMouseDemo().setVisible(true);
}
}
❼ java鼠标点击事件怎么做
java鼠标点击事件的方法如下:
<spanstyle="font-family:Verdana;">事件源</span>.addMouseListener(newMouseAdapter(){//建立事件处理机制
@Override
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==e.BUTTON1){//点击鼠标左键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是左键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}elseif(e.getButton()==e.BUTTON2){//点击鼠标滑轮
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是滑轮,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
elseif(e.getButton()==e.BUTTON3){//点击鼠标右键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是右键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
}
});
e.getButton()返回值分别为NOBUTTON、BUTTON1、BUTTON2、BUTTON3,分别代表着无点击、左击、中间键、右击三种情况。
❽ java鼠标点击事件
给你一个例子,太难讲了
我自己写的
package guidemo;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/**
* <p>Title: 图形用户界面</p>
*
* <p>Description: 简单的图形界面编程</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author vic
* @version 1.0
*/
public class ColorFrame extends Frame implements MouseListener {
Label L; //标签
TextField T; //文本域
Button B1, B2; //按钮
public ColorFrame() {
this.setLayout(null); //想要手动指定各组件的的位置
L = new Label("输入学号:"); //设定标签L内容
L.setBounds(60, 50, 50, 25); //设定标签L外观
this.add(L); //将标签L添加到窗口中
T = new TextField("请在这里输入"); //设定文本域T的内容
T.setBounds(125, 50, 90, 25); //设定文本域T的外观
this.add(T); //将文本域T添加到窗口中
B1 = new Button("变红!"); //设定按钮B1的内容
B1.setBounds(25, 90, 90, 25); //设定按钮B1的外观
B1.addMouseListener(this);//在B1上注册鼠标监听器
this.add(B1); //将按钮B1添加到窗口中
B2 = new Button("变绿!");
B2.setBounds(125, 90, 90, 25);
B2.addMouseListener(this);
this.add(B2);
WindowDestroyer Listener = new WindowDestroyer(); //创建关闭窗口监听器
this.addWindowListener(Listener); //将监听器添加到窗口中
this.setBackground(Color.yellow); //设定窗口背景颜色
this.setTitle("This is Frame!"); //设定窗口标题文字
this.setBounds(0, 0, 250, 220); //设定窗口位置和大小
this.setVisible(true); //显示窗口
}
public void mouseClicked(MouseEvent e) {
if (e.getComponent() == B1) {//getComponent返回按钮上面的字符串
this.setBackground(Color.red);
}
if (e.getComponent() == B2) {
this.setBackground(Color.green);
}
}
public void mouseExited(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public static void main(String[] args) {
new ColorFrame();
}
}
希望能解决您的问题。
❾ JAVA鼠标点击事件问题
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class Test {
private JFrame frame;
private JLabel label1;
private boolean flag=true;
public Test()
{
=new JFrame("标签测试");
label1=new JLabel("变红",JLabel.CENTER);
label1.setOpaque(true);
label1.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if(flag)
{
label1.setBackground(Color.red);
flag=false;
}
else
{
label1.setBackground(Color.white);
flag=true;
}
}
}
);
frame.getContentPane().add(label1,BorderLayout.CENTER);
frame.setSize(300,300);
frame.setLocation(300,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
Test t=new Test();
}
}