Java学习笔记:swing画笔工具Graphics,刷新页面,键盘事件,随机数等【诗书画唱】
Graphics:画笔工具
setColor:设置画笔颜色
DrawRect:空心矩形
fillRect:实心矩形
DrawOavl:空心圆
fillOavl:实心圆
DrawLine:画线(注意)
以上都是4个参数,第一个为x轴位置,第二个y轴位置,第三个为宽度,第四个为高度
DrawRoundRect:矩形,6个参数,前面4的意思一样,后面两个为x和y的角度
获取到当前窗体,获取它的工具类,获取图片路径
//加载图片
Image img=Toolkit.getDefaultToolkit().getImage("tup//2.jpg");
g.drawImage(img, 100,100,100,100,this);
// setColor(颜色):设置画笔的颜色【即为“设置空心矩形的边框的颜色或实心矩形的填充的颜色”】
// drawLine(int startX,int startY, int EndX,int EndY):绘制直线
// drawOval(int StartX,int StartY,int Width,int Height):绘制空心圆形
// drawRect(int startX,int startY,int width,int height):绘制空心矩形
rect
[词典]矩形(Rectangular); 矩形结构; 矩形区域;
rectangular英[rekˈtæŋɡjələ(r)]美[rekˈtæŋɡjələr]
adj.长方形的; 矩形的;
draw英[drɔː]美[drɔː]
v.(用铅笔、钢笔或粉笔) 画,描绘,描画; 拖(动); 拉(动); 牵引; 拉,拖(车); 吸引,使感兴趣;n.抽彩; 抽奖; 抽签; 平局; 和局; 不分胜负;
fill英[fɪl]美[fɪl]
v.(使) 充满,装满,注满,填满; 堵塞,填补(洞、孔); 使充满(感情);n.填满…的量; 足够…的量; 吃饱的量; 喝足的量;
// 绘制3D空心矩形
// fillRect(int x,int y,int width,int height):实心矩形
// fillOval(int x,int y,int width,int height):实心圆形
// fillRoundRect(int x,int y,int width,int height,int banjingWidth,int banjingHeight):绘制实心圆角矩形
// drawRoundRect(int x,int y,int width,int height,int banjingWidth,int banjingHeight):绘制空心圆角矩形
// drawArc(int x,int y,int width,int height,int start,int end):绘制扇形边框
// fillArc(int x,int y,int width,int height,int start,int end):绘制扇形区域
// setFont(new Font(“字体样式”,粗细,大小)):设置字体样式
// drawString(String str,int x,int y):绘制字体
// drawImage(img,x,y,width,height,color,this):绘制图片
fillArc 代表填充画出来的图
drawArc 只是画图(即图形的边缘)
具体例子:
// g.setColor(Color.green);
// g.drawLine(10,100,300,100);
// g.drawRect(200,220,100,100);
// g.fillOval(100,100,100,150);
// g.fillRoundRect(200,200,150,150,30,30);
// g.fillArc(100,100,150,150,90,90);
// g.setFont(new Font("微软雅黑",Font.BOLD,30));
// g.drawString("hello",100,100);
// 自己总结的语法:fillArc(X轴方向位移,
// Y轴方向位移,X轴方向宽度,Y轴方向高度,
// 正摆放后的扇形顺时针旋转的角度,扇形对应的圆周角)
// g.fillRect(0,0,300,300);//画一个矩形
// drawRect:空心的矩形
多把平时旁边写的注释等当学习笔记,集合到一起。
个人总结的语法:
this.getWidth()和this.getHeight()表示整个面板的宽和高
g.clearRect(要清空区域的X轴方向位移,
要清空区域的y轴方向位移,
要清空区域的宽, 要清空区域的高)
repaint();//用来刷新页面
// 调用该方法的三个情况:
// 1.页面初始化
// 2.显示调用repaint()方法
// 3.页面大小进行改变的时候
g.clearRect(195,140,110,50);
// :clearRect方法用于页面刷新后清除原先的内容
Random Random=new Random();
Random.nextInt(4)将产生0,1,2,3这4个数字中的任何随机一个数字
//Random ran=new Random() ;
//如果num=10+ran.nextInt (20),那么10<=num<10+20
//int[] a=new int[rand.nextint(20)+1];
//整数范围是[0,20)
//Java nextInt()函数 nextInt(int num)
//能接受一个整数作为它所产生的随机整数的上限,
//下限为零,比如: nextInt(4)将产生0,1,2,3这4个数字中的任何一个数字,
//注意这里不是0-4,而是0-3。
//但下限总是零,不能更改,所以若要达到非零下限的效果,
//必须把上限减去下限的结果传给 nextInt( ),然后把下限加入 nextInt( ) 返回的整数。
//用implements实现键盘点击的KeyListener接口