你这个东西就有点搞笑了.. 你问的东西是什么? 是不能响应 还是不知道自己该怎么响应.?.很明显你没有相应的 左转右转的 事件响应. public void actionPerformed(ActionEvent evt) { JButton ac = (JButton) evt.getSource(); String com = evt.getActionCommand(); // Button b = (Button) evt.getSource(); // if (evt.getSource() == bt2) { // File Open Button // openImage(); // return; // } else if (ac.getLabel().equals("original")) { command = SHOW_NORM; } else if (ac.getLabel().equals("LeftRight")) { command = SHOW_HORIZONTAL; } else if (ac.getLabel().equals("UpDown")) { command = SHOW_VERTICAL; } reDraw(command); if (com.equals("-20%")) { if (scale > -4) scale--; int h = (int) (origin.getHeight(this) * (1 + 0.2 * scale)); int w = (int) (origin.getWidth(this) * (1 + 0.2 * scale)); im = origin.getScaledInstance(w, h, Image.SCALE_DEFAULT); flag = false; } if (com.equals("+20%")) { scale++; int h = (int) (origin.getHeight(this) * (1 + 0.2 * scale)); int w = (int) (origin.getWidth(this) * (1 + 0.2 * scale)); im = im.getScaledInstance(w, h, Image.SCALE_DEFAULT); flag = false; } if (ac.getLabel().equals("File Open")) { FileDialog opens = new FileDialog(this, "open", FileDialog.LOAD); opens.show(); img = opens.getDirectory() + opens.getFile(); images = getAllImageFile(opens.getDirectory()); for (int i = 0; i < images.length; i++) { if (images[i].getPath().equals(img)) { imgIndex = i; } } flag = true; scale = 0; } if (ac.getLabel().equals("Back")) { if (imgIndex > 0) { img = images[--imgIndex].getPath(); } flag = true; scale = 0; } if (ac.getLabel().equals("Next")) { if (imgIndex < images.length - 1) { img = images[++imgIndex].getPath(); } flag = true; scale = 0; } setTitle(img); uf.repaint(); }很明显你的事件响应最终只到 Next上.. 你自己都没写事件相应的方法. 你还在这问 为什么不响应..真是怀疑这代码是不是你写的.
好 . 那就推论到你不知道该怎么写. 左右转我想到的办法是 把每一个点的像素值拿到..做矩阵变换. 可能比较笨...不排除有更好的..
好 . 那就推论到你不知道该怎么写. 左右转我想到的办法是 把每一个点的像素值拿到..做矩阵变换. 可能比较笨...不排除有更好的..
解决方案 »
- 求解决!!!删了重做.还是这个情况。数据库查询是两表联查!
- spring配置文件,怎么才可以两个bean id名字一样?
- 新手问题 : 关于lucene搜索的问题
- Xquery 选取 top 10
- 关于spring抛出异常后通知的问题?
- 关于hibernate新特性dynamic-class
- ssh整合dwr问题
- <data-sources>连接数据库的问题
- 怎样用jbuilder 2005调用dotnet的webservice?急!!!
- 十万火急,小弟在线等。哪位兄台能提供一个解决javamail中带附件的jsp完整代码,最好有表单页面
- 关于spring 控制ejb事务的问题
- apache占用大量CPU问题
package com.image;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;import java.awt.image.BufferedImage;
import com.sun.image.codec.jpeg.*;
import com.image.PicZoom;
public class ImageHandlerServlet extends HttpServlet{
protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
String strId = req.getParameter("id");
if (null==strId || strId.equals("")){
throw new ServletException("图像参数错");
}
int id=Integer.parseInt(strId);
String srcImgFileName=null;
switch(id){
case 1:
srcImgFileName = getServletContext().getRealPath("/")+"images/1.jpg";
break;
case 2:
break;
default:
throw new ServletException("图像参数错");
}
resp.setContentType("image/jpeg");
ServletOutputStream sos = resp.getOutputStream();
//调用picZoom类的方法对图像缩放
BufferedImage buffImg = PicZoom.zoom(srcImgFileName,80,80);
//搞jpeg图像解码器,用于编码内存中的图像数据支JPeg数据输出流
JPEGImageEncoder jpgEncoder=JPEGCodec.createJPEGEncoder(sos);
//编码BufferedImage对像到JPEG数据输出流
jpgEncoder.encode(buffImg);
sos.close();
}
public void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
}
public void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
doGet(req,resp);
}
}
------------------------------------------
package com.image;
import java.awt.Color;
import java.awt.Image;
import java.awt.image.*;
import java.awt.Graphics2D;
import javax.swing.ImageIcon;public class PicZoom{
public static BufferedImage zoom(String srcFileName,int outputWidth,int outputHeight){
//用图像文件名,搞ImageIcon对象
ImageIcon imgIcon=new ImageIcon(srcFileName);
//得到Image对象
Image img=imgIcon.getImage();
return zoom(img,outputWidth,outputHeight);
}
public static BufferedImage zoom(Image srcImage,int outputWidth,int outputHeight){
//搞一个定义的图像的BufferImage
BufferedImage buffImg = new BufferedImage(outputWidth,outputHeight,BufferedImage.TYPE_INT_BGR);
//搞Graphics2D对象用于在BufferedImage 上绘图
Graphics2D g = buffImg.createGraphics();
//设置图形上下文的当前顏色为white
g.setColor(Color.WHITE);
//用图形上下文的当前顏色填充指定的矩形区域
g.fillRect(0,0,outputWidth,outputHeight);
//按照缩放的大小在BufferedImage对象上绘制原始图像
g.drawImage(srcImage,0,0,outputWidth,outputHeight,null);
g.dispose();
return buffImg;
}
}
---------------
<html>
<head>
</head>
<body>
<img src="image?id=1">
</body>
</html>
------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5"> <servlet>
<servlet-name>ImageHandlerServlet</servlet-name>
<servlet-class>com.image.ImageHandlerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ImageHandlerServlet</servlet-name>
<url-pattern>/image</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>ShowBookServlet</servlet-name>
<servlet-class>com.book.servlet.ShowBookServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ShowBookServlet</servlet-name>
<url-pattern>/search</url-pattern>
</servlet-mapping></web-app>