java第一次上机实验--验证码
package javashiyan; import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.*; public class Yanzhen extends JFrame
{
//定义成员变量
private Mypanel mp;
private JButton b;
private JTextField txt;
private ActionListener listener; public Yanzhen()
{
Realize();
}
public void Realize()
{
JFrame f=new JFrame("验证码");
//实例化
b=new JButton();
b.addActionListener(listener);
ActionEvent e;
b.setIcon(new ImageIcon("D://button//刷新.jpg"));//载入图片
b.setLocation(200,100);//设置位置
b.setSize(32,32);//设置大小
b.setVisible(true);//设置显示 txt=new JTextField();
txt.setSize(90,30);
txt.setLocation(10,100);
txt.setVisible(true); mp=new Mypanel();
mp.setSize(100,30);
mp.setLocation(100,100); JButton jb=new JButton(); f.add(mp);
f.add(b);
f.add(txt); f.setLayout(null);
f.setSize(400, 400);//设置界面大小
f.getContentPane().setBackground(Color.white);//设置界面的背景颜色
f.getContentPane().setVisible(true);
f.setVisible(true);
} public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub }
}
package javashiyan; import java.awt.*;
import java.util.*; public class Mypanel extends Panel {
public void paint(Graphics g)
{
int height = 50;
int width = 90;
//验证码框背景颜色
g.setColor(Color.white);
//填充验证码背景
g.fillRect(0, 0, width, height);
g.setColor(Color.BLACK);
g.drawRect(0, 0, width-1, height-1);
Random r = new Random();
for(int i = 0;i<100;i++)
{
int x = r.nextInt(width)-1;
int y = r.nextInt(height)-1;
g.drawOval(x, y, 2, 2);//画干扰的圆点
}
for(int i=0;i<3;i++)
{
int x1=r.nextInt(width)-1;
int y1=r.nextInt(height)-1;
int x2=r.nextInt(width)-1;
int y2=r.nextInt(height)-1;
g.drawLine(x1, y1, x2, y2);//画干扰的线段
} g.setFont(new Font("黑体",Font.BOLD,20));//设置验证码字体以及大小
g.setColor(Color.BLUE);//设置验证码字体颜色
//生成随机验证码
char[] tmp = ("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
StringBuilder sb = new StringBuilder();
for(int i = 0;i<4;i++)
{
int pos = r.nextInt(tmp.length);
char c = tmp[pos];
sb.append(c + " ");
}
g.drawString(sb.toString(), 10, 15);//写入验证码
}
}
package javashiyan;
import java.util.Random;
public class main {
public static void main(String[] args)
{
Yanzhen dang=new Yanzhen();
}
}
java第一次上机实验--验证码的更多相关文章
- Java第一次上机实验源代码
小学生计算题: package 第一次上机实验_; import java.util.*; public class 小学计算题 { public static void main(String[] ...
- java第一次上机练习作业
1.已知a,b均是整型变量,写出将a,b两个变量中的值互换的程序.(知识点:变量和 运算符综合应用) int a = 5, b = 10; int temp; temp = a; a = b; b = ...
- 20145221 《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145221 <Java程序设计>实验报告一:Java开发环境的熟悉(Windows+IDEA) 实验要求 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调 ...
- 南京邮电大学java第一次实验报告
实 验 报 告 ( 2017 / 2018学年 第2学期) 课程名称 JAVA语言程序设计 实验名称 Java集成开发环境的安装与使用. Java变量.表达式与控制结构 实验时间 2018 年 4 月 ...
- Java第一次实验 20145104张家明
Java第一次实验 实验报告 实验要求: 1.使用JDK编译.运行简单的Java程序 2.使用IDEA 编辑.编译.运行.调试Java程序 实验内容: 1.使用JDK编译.运行简单的Java程序: 2 ...
- 20155210 潘滢昊 Java第一次实验---凯撒密码
Java第一次实验---凯撒密码 实验内容 实现凯撒密码,并进行测试. 实验代码 import java.io.*; import java.util.Scanner; public class ks ...
- 20145312《Java第一次实验报告》
20145312<Java第一次实验报告> Java开发环境的熟悉(Windows+Idea) 一.实验内容 使用Idea编辑.编译.运行.调试Java程序. 使用JDK编译.运行简单的J ...
- java第一次实验总结&第三周总结
Java第一次实验报告,java开发环境与简单的Java程序 一.实验目的 1.熟悉JDK开发环境 2.熟练掌握结构化程序设计方法 二.实验内容 打印输出所有的"水仙花数",所谓& ...
- JAVA第一次实验 ——实验楼
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1352 姓名:潘俊洋 学号:20135230 成绩: 指导教师:娄嘉鹏 ...
随机推荐
- Android的Databinding-单向绑定
两种方式实现观察绑定. 一.POJO类实现android.databinding.Observable,在属性set方法中调用notifyPropertyChanged(BR.lastName); 其 ...
- 关于cxf生成客户端代码中的JAXBElement<String>
1.使用自动生成的java文件中的 ObjectFactory构造入参 关于cxf生成客户端代码中的JAXBElement<String> 在使用cxf或者x-fire进行webse ...
- C# MemoryCache GCHandle
MemoryCache在项目中用了很久,感觉比较简单,以前也看过里面的源代码,主要借用MemoryCacheStore来完成数据的存储,里面是线程安全的,MemoryCacheStore借用Hasht ...
- Centos PHP+Apache执行exec()等Linux脚本权限设置的详细步骤
1. 查看一下你的Apache的执行用户是谁: lsof -i:80 运行之后的结果为: 从图中我们可以清楚的看到,httpd(也就是Apache)的执行用户为:exec_shell( ...
- JAVA中通过Jedis操作Redis连接与插入简单库
一.简述 JAVA中通过Jedis操作Redis连接与插入简单库 二.依赖 <!-- https://mvnrepository.com/artifact/redis.clients/jedis ...
- MongoDB地理空间数据存储及检索
目录 1.存入地理数据 GeoJSON数据存入 1.Ponit 点数据 2.LineString 线数据(多段线) 3. Polygon 多边形数据 4.MultiPoint多点.MultiLineS ...
- golang 小例子
import ( "bytes" "encoding/binary" "encoding/gob" "fmt" ) fu ...
- ffmpeg 、Vlc参数
ffmpeg.exe -loglevel error -probesize 32 -vsync passthrough -framerate 20 -f gdigrab -i desktop -fil ...
- php获取客户端IP地址的方法
参考:https://www.cnblogs.com/rendd/p/6183094.html <?php function getip() { //strcasecmp 比较两个字符,不区分大 ...
- 【原创 Hadoop&Spark 动手实践 9】Spark SQL 程序设计基础与动手实践(上)
[原创 Hadoop&Spark 动手实践 9]SparkSQL程序设计基础与动手实践(上) 目标: 1. 理解Spark SQL最基础的原理 2. 可以使用Spark SQL完成一些简单的数 ...