java第一次上机_java第一次上机实验--验证码

1 package javashiyan;

2

3 import java.awt.Color;

4 import java.awt.event.ActionEvent;

5 import java.awt.event.ActionListener;

6

7 import javax.swing.*;

8

9 public class Yanzhen extends JFrame

10 {

11 //定义成员变量

12 private Mypanel mp;

13 private JButton b;

14 private JTextField txt;

15 private ActionListener listener;

16

17 public Yanzhen()

18 {

19 Realize();

20 }

21 public void Realize()

22 {

23 JFrame f=new JFrame("验证码");

24 //实例化

25 b=new JButton();

26 b.addActionListener(listener);

27 ActionEvent e;

28 b.setIcon(new ImageIcon("D://button//刷新.jpg"));//载入图片

29 b.setLocation(200,100);//设置位置

30 b.setSize(32,32);//设置大小

31 b.setVisible(true);//设置显示

32

33 txt=new JTextField();

34 txt.setSize(90,30);

35 txt.setLocation(10,100);

36 txt.setVisible(true);

37

38 mp=new Mypanel();

39 mp.setSize(100,30);

40 mp.setLocation(100,100);

41

42 JButton jb=new JButton();

43

44

45 f.add(mp);

46 f.add(b);

47 f.add(txt);

48

49 f.setLayout(null);

50 f.setSize(400, 400);//设置界面大小

51 f.getContentPane().setBackground(Color.white);//设置界面的背景颜色

52 f.getContentPane().setVisible(true);

53 f.setVisible(true);

54 }

55

56

57

58 public void actionPerformed(ActionEvent e) {

59 // TODO Auto-generated method stub

60

61

62 }

63 }

1 package javashiyan;

2

3 import java.awt.*;

4 import java.util.*;

5

6 public class Mypanel extends Panel {

7 public void paint(Graphics g)

8 {

9 int height = 50;

10 int width = 90;

11 //验证码框背景颜色

12 g.setColor(Color.white);

13 //填充验证码背景

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

15 g.setColor(Color.BLACK);

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

17 Random r = new Random();

18 for(int i = 0;i<100;i )

19 {

20 int x = r.nextInt(width)-1;

21 int y = r.nextInt(height)-1;

22 g.drawOval(x, y, 2, 2);//画干扰的圆点

23 }

24 for(int i=0;i<3;i )

25 {

26 int x1=r.nextInt(width)-1;

27 int y1=r.nextInt(height)-1;

28 int x2=r.nextInt(width)-1;

29 int y2=r.nextInt(height)-1;

30 g.drawLine(x1, y1, x2, y2);//画干扰的线段

31 }

32

33 g.setFont(new Font("黑体",Font.BOLD,20));//设置验证码字体以及大小

34 g.setColor(Color.BLUE);//设置验证码字体颜色

35 //生成随机验证码

36 char[] tmp = ("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();

37 StringBuilder sb = new StringBuilder();

38 for(int i = 0;i<4;i )

39 {

40 int pos = r.nextInt(tmp.length);

41 char c = tmp[pos];

42 sb.append(c " ");

43 }

44 g.drawString(sb.toString(), 10, 15);//写入验证码

45 }

46 }

1 package javashiyan;

2

3

4

5 import java.util.Random;

6

7 public class main {

8

9 public static void main(String[] args)

10 {

11 Yanzhen dang=new Yanzhen();

12 }

13

14 }

15

来源:http://www.icode9.com/content-1-41951.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值