Java使⽤Graphics类进⾏绘图的常⽤⽅法
setColor(color c) 将⽂字,边框或要填充的区域为指定颜⾊
Font f=new Font(String name , int type , int size)
setFont(Font f)
Font()⽅法的三个参数分别表⽰:字体名称(如:"宋体" ),
字体样式(如:Font.PLAINT,Font.ITALIC,Font.BOLD),字体⼤⼩
setFont()⽅法⽤于接收⼀个Font类型的参数
drawRect(int x , int y , int width , int height)
drawRect()⽅法⽤于绘制矩形边框;其中:x表⽰矩形左边缘的位置;
y表⽰矩形上边缘的位置;width表⽰矩形的宽,height表⽰矩形的⾼
drawOval(int x , int y , int width , int height)
drawOval()⽅法⽤于绘制⼀个圆或椭圆;其⼤⼩为参数为x,y,width,height指定的矩形的外接圆或椭圆
fillRect(int x , int y , int width , int height)
⽤预先指定的颜⾊填充矩形
fillOval(int x , int y , int width , int height)
⽤预先指定的颜⾊填充圆或椭圆
drawString(String str , int x , int y)
⽤预先设置好的颜⾊和字体来绘制⽂本str,⽂本左下⾓的坐标为(x,y)
重写panel组件的paint()⽅法,并为该⽅法传⼊⼀个Griphics类型的对象⽤来充当画笔来绘制图形,绘制⼀个可以验证码,让其在Frame窗体中显⽰
package AWT组件;
import java.awt.*;
import java.util.Random;
public class AWT绘图{
public static void main(String[] args){
Frame f=new Frame("验证码");
cdPanel cd=new cdPanel();//为cdPanel创建实例对象
f.add(cd);
f.setLocationRelativeTo(null);
f.setSize(220,130);
f.setVisible(true);
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent arg0){
Window Window();
window.dispose();
window.dispose();
}
});
}
}
/
/创建cdPanel类继承Panel类,重写Panel类的paint()⽅法
class cdPanel extends Panel{
//重写Panel类的paint()⽅法
public void paint(Graphics arg0){
int width=160;
int height=60;
arg0.setColor(Color.black);//预先设置矩形边框的颜⾊
/**绘制矩形边框
* 20是矩形左边缘到左边框的距离,10是矩形上边缘到上边框的距离
* width是矩形宽度,height是矩形⾼度
*/
arg0.drawRect(20,10, width, height);//绘制矩形边框
arg0.setColor(Color.LIGHT_GRAY);//预先设置填充矩形的颜⾊
arg0.fillRect(20,10, width+1, height+1);//填充矩形,范围+1才能将矩形全部填完
arg0.d);//预先设置椭圆边框的颜⾊
/**
* random r=new random();
* int Int(123);
*
* 注解:定义整型变量m从0~123之间获取⼀个随机数
*/
Random r=new Random();
for(int i=1;i<=200;i++){
int Int(width)+20;//+20才能确保绘制的椭圆全部落在矩形区域,因为矩形左边缘到左边框的距离为20
int Int(height)+10;
arg0.drawOval(x, y,2,2);
}
arg0.setColor(Color.black);//设置字体颜⾊
Font font=new Font("宋体",Font.BOLD,50);
arg0.setFont(font);//设置字体样式(3个参数分别表⽰:字体名称,字体样式,字体⼤⼩)
/**
* toCharArray()的⽤法:将字符串对象中的字符转换为⼀个字符数组
* 例如:
* String str="好好学习,天天向上!";
* char ch[]=CharArray();
* System.out.println("ch[1]="+ch[1]);
* System.out.println("ch[2]="+ch[2]);
* 输出结果:
* ch[1]=好
* ch[2]= //因为第三个字符为空,所以输出为空
*
* 扩展:
* charAt()的⽤法:提取字符串中指定的字符,
* 该⽅法返回⼀个字符值,该字符位于指定索引位置,字符串中第⼀个字符的索引为0
* 例如:
* String str="1234567890"+"abcdefghijklmnopqrstuvwxyz";
* char ch=charAt(10);
* System.out.println(ch);
* 输⼊结果:
* a
*/
// char[] chars=("1234567890"+"abcdefghijklmnopqrstuvwxyz"+"ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray(); String str="1234567890"+"abcdefghijklmnopqrstuvwxyz"+"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[] CharArray();
StringBuilder sb=new StringBuilder();
for(int i=0;i<4;i++){
int Int(chars.length);//从0~chars.length之间获取⼀个随机数作为索引
char ch=chars[yan];//通过索引从chars[]数组中获取⼀个字符
char ch=chars[yan];//通过索引从chars[]数组中获取⼀个字符
/**append()⽅法的作⽤:
* ⽤于向StringBuilder(/StringBuffer/String)对象后⾯追加字符/字符串 * 例如:
* StringBuffer s = new StringBuffer("Hello");
* s.append("World");
* 输出结果:
* HelloWorld
*/
sb.append(ch);//通过变量ch在循环过程中获取的字符拼接成验证码}
/**
nextint()方法* toString()⽅法⽤于返回对象的字符串形式
*/
arg0.String(),40,60);//验证码左下⾓的坐标为(40,60) }
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论