Public void mouseReleased(MouseEvent me)

Public void mousePressed(MouseEvent me)

Public void mouseExited(MouseEvent me)

Public void mouseEntered(MouseEvent me)

Public void mouseClicked(MouseEvent me)

MouseListener имеет 5 методов, которые следует бработать.

Пример на SE для JPanel с изображениями:

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.event.MouseEvent;

import java.awt.event.MouseListener;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Prog_5_1

{

JFrame form;

pictureBox pc; // панель для рисования

Prog_5_1()

{

form = new JFrame();

form.setSize (500,500);

form.setTitle ("лабораторная 5");

form.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

form.setLayout(null);

pc=new pictureBox();

pc.setBounds(0, 0, 300, 300);

form.add(pc);

form.show();

}

public static void main (String args[])

{

Prog_5_1 f;

f= new Prog_5_1();

}

}

class pictureBox extends JPanel

implements MouseListener // использование прослушивания мыши

{

int Regim;

int mouseX,mouseY; // координаты мыши

public static BufferedImage im;

pictureBox ()

{

mouseX=0;

mouseY=0;

Regim=0;

addMouseListener(this); // подключение прослушивания мыши

try

{

im = ImageIO.read(new File("face1.jpg"));

}

catch (IOException e)

{

}

}

public void paintComponent(Graphics g)

{

Graphics2D g2 = im.createGraphics();

g.drawImage(im, 0, 0, null);

if(Regim==1) // после события от мыши!

{

Color c;

c=new Color(220,0,250);

g.setColor(c);

g.drawOval(mouseX,mouseY,40, 40);

}

repaint();

}

// 5 событий от мыши

{

}

{

}

{

}

{

}

{

mouseX=me.getX(); // координаты курсора мыши

mouseY=me.getY();

Regim=1;

repaint();

}

}

MouseMotionListener имеет 2 метода: mouseDragged (MouseEvent me) и


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: