如何取得一个像素点的颜色? 如果你说的是Color.getRGB(),那么不跟没说一样么?我现在就是不知道Color。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 //希望这个程序对你有用import java.awt.*;import java.awt.event.*;import java.awt.image.*;import javax.swing.*; public class GetPixel {public PixelMadness() { 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 {ImageIcon icon = new ImageIcon("zx2.jpg"); Image image = icon.getImage(); int imageWidth = image.getWidth(this);int imageHeight = image.getHeight(this);int[] pixelArray = new int[imageWidth * imageHeight];PixelGrabber grabber = new PixelGrabber(image,0,0,imageWidth,imageHeight,pixelArray,0,imageWidth);public ImageHolder() {try { grabber.grabPixels(); }catch(InterruptedException ie){System.out.println("Pixel array not completed");return;}addMouseListener(new MouseAdapter(){ public void mouseClicked(MouseEvent me){ int mouseX = (int)me.getPoint().getX(); int mouseY =(int) me.getPoint().getY(); int pixel = pixelArray[(mouseY * imageWidth) + mouseX]; getPixel(pixel); }});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 pixel){ int alpha = (pixel >> 24)&0xff; int red = (pixel >> 16)&0xff; int green = (pixel >> 8)&0xff; int blue = (pixel)&0xff; System.out.println( "("+alpha+","+red+","+green+ ","+blue+ ")"); }} bootcool:谢谢你的回答,不过我暂时搞不清该怎么样才能把分给你。所以请你不要着急,我肯定会给的。 java 模拟Ping过程,用InetSocketAddress实现 急急急 怎么显示图片 !!! java基础算法题,给点思路,谢谢大家啦 请教一个问题 谢谢急~· "找不到符号"的问题,大家帮忙看下 java导包 JAVA 压缩 文件夹的 问题~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 关于 java RCP开发的 java在硬件方面的接口多吗?主要有哪些? 请问什么插件能够使ie支持用java.swing写的applet JDBC奇怪问题 关于<<thinking in java>>中的源代码执行的问题
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.swing.*; public class GetPixel {public PixelMadness() {
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 {
ImageIcon icon = new ImageIcon("zx2.jpg");
Image image = icon.getImage();
int imageWidth = image.getWidth(this);
int imageHeight = image.getHeight(this);
int[] pixelArray = new int[imageWidth * imageHeight];
PixelGrabber grabber = new PixelGrabber(image,0,0,imageWidth,imageHeight,pixelArray,0,imageWidth);public ImageHolder() {
try { grabber.grabPixels(); }
catch(InterruptedException ie){
System.out.println("Pixel array not completed");
return;
}addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent me){
int mouseX = (int)me.getPoint().getX();
int mouseY =(int) me.getPoint().getY();
int pixel = pixelArray[(mouseY * imageWidth) + mouseX];
getPixel(pixel);
}
});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 pixel){
int alpha = (pixel >> 24)&0xff;
int red = (pixel >> 16)&0xff;
int green = (pixel >> 8)&0xff;
int blue = (pixel)&0xff;
System.out.println( "("+alpha+","+red+","+green+ ","+blue+ ")");
}
}
谢谢你的回答,不过我暂时搞不清该怎么样才能把分给你。所以请你不要着急,我肯定会给的。