posts - 7,comments - 5,trackbacks - 0

http://www.blogjava.net/deng947/archive/2006/04/14/41139.html
HTML Basic

Image 标签 <IMG src="../images/03.gif" border="0"> 所有属性包括

Basic 属性包括

 alt

       Class

       Id

       Long

       Longdesc

       Name

       Src

       Title

       Usemap

Display 属性包括

       Align

       Border

       Dir

       Height

       Hspace

       Ismap

       Mapfile

       Style

       Vspace

       Width

Events 属性包括

       Onclick

Ondbclick

Onhelp

Onkeydown

Onkeypress

Onkeyup

Onmounsedown

Onmousemove

Onmouseout

Onmouseover

Onmouseup

二、 HTML-Form

 Image Button<INPUT type="image" src="../images/03.gif" />

Basic 属性包括

 Accept

 Accesskey

 Alt

Checked

       Class

       Disabled

       Id

       Long

       Maxlength

       Name

       readonly

       Src

       Tabindex

       Title

       Type

       Usemap

       Value

Display 属性包括

       Align

       Border

       Dir

       Height

       Ismap

Isstyle

Size

       Style

       Width

Events 属性包括

       Onblur

       Onchange

Onclick

Ondbclick

Onfocus

Onhelp

Onkeydown

Onkeypress

Onkeyup

Onmounsedown

Onmousemove

Onmouseout

Onmouseover

Onmouseup

       Onselect

三、 Struts Basic

Image <html:img page="/images/03.gif" border="0" />

Basic 属性包括

 Action

Alt

 AltKey

 Bundle

 imageName

 locale

 lowsrc

       Name

       Page

PageKey

Paramname

Paramproperty

Paramscope

       Src

       SrcKey

       Title

       titleKey

       Usemap

Display 属性包括

       Align

       Border

       Height

       Hsapce

       Ismap

       Style

       StyleClass

       StyleId

       Vsapce

       Width

Events 属性包括

Onclick

Ondbclick

Onkeydown

Onkeypress

Onkeyup

Onmounsedown

Onmousemove

Onmouseout

Onmouseover

Onmouseup

Other 属性包括

       contextRealtive

       module

       paramId

       useLocalEncoding

四、 Struts-Form

Image Button <html:image page="/images/03.gif" />

Basic 属性包括

Accesskey

 Alt

 altKey

bundle

        Disabled

       Indexed

       Locale

       Page

pageKey

property

       Src

       SrcKey

       Tabindex

       Title

       titleKey

       Value

Display 属性包括

       Align

       Border

       Style

       styleClass

       styleId

Events 属性包括

       Onblur

       Onchange

Onclick

Ondbclick

Onfocus

Onkeydown

Onkeypress

Onkeyup

Onmounsedown

Onmousemove

Onmouseout

Onmouseover

Onmouseup

  Struts 必须使用 Struts Basic 下的 Image 标签 Struts-Form 下的 Image Button 按钮。其中可以使用 servlet 随机生成的图片,或者 jsp 文件。 JSP 下的彩色验证码的解决:

随机验证图片的生成文件

<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>

<%!

Color getRandColor(int fc,int bc){// 给定范围获得随机颜色

        Random random = new Random();

        if(fc>255) fc=255;

        if(bc>255) bc=255;

        int r=fc+random.nextInt(bc-fc);

        int g=fc+random.nextInt(bc-fc);

        int b=fc+random.nextInt(bc-fc);

        return new Color(r,g,b);

        }

%>

<%

// 设置页面不缓存

response.setHeader("Pragma","No-cache");

response.setHeader("Cache-Control","no-cache");

response.setDateHeader("Expires", 0);

// 在内存中创建图象

int width=60, height=20;

BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

// 获取图形上下文

Graphics g = image.getGraphics();

// 生成随机类

Random random = new Random();

// 设定背景色

g.setColor(getRandColor(200,250));

g.fillRect(0, 0, width, height);

// 设定字体

g.setFont(new Font("Times New Roman",Font.PLAIN,18));

// 画边框

//g.setColor(new Color());

//g.drawRect(0,0,width-1,height-1);

// 随机产生 155 条干扰线,使图象中的认证码不易被其它程序探测到

g.setColor(getRandColor(160,200));

for (int i=0;i<155;i++)

{

        int x = random.nextInt(width);

        int y = random.nextInt(height);

        int xl = random.nextInt(12);

        int yl = random.nextInt(12);

        g.drawLine(x,y,x+xl,y+yl);

}

// 取随机产生的认证码 (4 位数字 )

String sRand="";

for (int i=0;i<4;i++){

    String rand=String.valueOf(random.nextInt(10));

    sRand+=rand;

    // 将认证码显示到图象中

    g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));// 调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成

    g.drawString(rand,13*i+6,16);

}

// 将认证码存入 SESSION

session.setAttribute("rand",sRand);

// 图象生效

g.dispose();

// 输出图象到页面

ImageIO.write(image, "JPEG", response.getOutputStream());

%>

使用页面:

<%@ page contentType="text/html;charset=gb2312" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title> 认证码输入页面 </title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">

<META HTTP-EQUIV="Expires" CONTENT="0">

</head>

<body>

<form method=post action="check.jsp">

<table>

<tr>

<td align=left> 系统产生的认证码: </td>

<td><img border=0 src="image.jsp"></td>

</tr>

<tr>

<td align=left> 输入上面的认证码: </td>

<td><input type=text name=rand maxlength=4 value=""></td>

</tr>

<tr>

<td colspan=2 align=center><input type=submit value=" 提交检测 "></td>

</tr>
</table>

</form>

posted on 2009-04-23 19:58 心路 阅读(840) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: