iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java如何获得鼠标所在位置的图像的rgb值
  • 574
分享到

java如何获得鼠标所在位置的图像的rgb值

2023-06-03 03:06:30 574人浏览 安东尼
摘要

这篇文章主要介绍了java如何获得鼠标所在位置的图像的rgb值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java如何获得鼠标所在位置的图像的rgb值文章都会有所收获,下面我们一起来看看吧。import Ja

这篇文章主要介绍了java如何获得鼠标所在位置的图像的rgb值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java如何获得鼠标所在位置的图像的rgb值文章都会有所收获,下面我们一起来看看吧。

import Java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.swing.*;

public class GetRectPixel {

public GetRectPixel() {
ImageHolder holder = new ImageHolder();
JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.add(holder);
frame.getContentPane().add(panel);
frame.setSize(400,400);
frame.setVisible(true);
}

public static void main(String[] args) {
GetPixel getpixel = new GetPixel();
}
}

class ImageHolder extends canvas{
BufferedImage bi ;//创建缓冲区图像
Image image;
MediaTracker mt ;//创建媒体跟踪器
int imageWidth; //图像宽度
int imageHeight;//图像高度

public ImageHolder() {
mt =new MediaTracker(this);

try{
image = Toolkit.getDefaultToolkit().createImage("gigi3.jpg");
mt.addImage(image,0);
mt.waitForAll();//等待直到所有的图像都以完成装填
imageWidth =  image.getWidth(this);//获得单前图像的宽度
imageHeight = image.getHeight(this);//获得当前图像的长度
}
catch(Exception e){}
bi = new BufferedImage(imageWidth,imageHeight,BufferedImage.TYPE_INT_RGB);
addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent me){
//获得鼠标当前位置的横,纵坐标
int mouseX = (int)me.getPoint().getX();
int mouseY =(int) me.getPoint().getY();
//获得该处的rgb值
getPixel(mouseX,mouseY);
}
});

setSize(imageWidth,imageHeight);
}

public void paint(Graphics g){
int xCenter = (getSize().width / 2) - (imageWidth / 2);
int yCenter = (getSize().height / 2) - (imageHeight / 2);
g.drawImage(image, xCenter, yCenter, imageWidth, imageHeight, this);
}

public void getPixel(int x,int y){
  //获得ImageHolder的色彩模型
  ColORModel cm = this.getColorModel();
  //把象素形式的色彩组件(ImageHolder)以rgb的形式返回。
  int rgb = cm.getRGB(x*y);
  //分别获得其r,g,b值。
  int red = (rgb>>16)&0xff ;
  int green = (rgb>>8)&0xff ;
  int blue = (rgb)&0xff ;
  System.out.println( "("+red+","+green+ ","+blue+ ")");
 }
}

关于“java如何获得鼠标所在位置的图像的rgb值”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“java如何获得鼠标所在位置的图像的rgb值”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: java如何获得鼠标所在位置的图像的rgb值

本文链接: https://www.lsjlt.com/news/232481.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作