java工程开发之图形化界面之(第一课)
下面我们先上代码:
package 一个事例图形小应用程序;
import javax.swing.JApplet;
import java.awt.Graphics; public class 绘制图形 extends JApplet{
public void paint(Graphics canvas){
canvas.drawOval(100,50,200,200);
canvas.fillOval(155, 100, 10, 20);
canvas.fillOval(230,100,10,20);
canvas.drawArc(150, 160, 100, 50, 180, 180);
}
}
首先它和其它所有的小应用程序一样使用了Swing库(包)中的类JApplet
同时,它也使用了来自AWT库的类Graphics。除了Swing库中的类之外,小应用程序经常使用AWT库中的类。
下一个语句行pubilc class HappyFace extends JApplet
以用于该小应用程序的类定义开始,它被命名为HappyFace。单词extends JApplet指明我们正在定义一个小程序(继承),而不是其它类型的类。
这个小应用程序包含一个方法——paint,其定义下述语句开始:
public void paint(Graphics canvas)
paint方法指定在这个小应用程序中绘制什么图形。当小应用程序运行时paint方法被自动的调用。
现在先解释一下:
canvas.drawOval(100,50,200,200);
是用来构成脸部图形的。前两个数字说明圆绘制在屏幕上的什么位置。后两个数字是用来绘制椭圆的长轴和短轴的长度。这些数字的单位是用像素进行定义的。
canvas.fillOval(155, 100, 10, 20);
canvas.fillOval(230,100,10,20);
这两句话是用来绘制眼睛的。fillOver的意思是调用了一个填充了的椭圆。
最后一句当然是用来绘制嘴巴的。
在这里简单解释一下绘制椭圆和圆的一些基本知识:
canvas.drawOval(100,50,90,50)绘制的,前两个数字是坐标,后两个数字是长短半轴。也就是drawOval和fillOver两个方法。
绘制弧形:canvas.drawArc(150,160,100,50,180,180);
前两个参数给定不可见的矩形的位置。这个矩形左上角在点(150,160)上。下两个参数指定矩形的大小:该矩形的宽度为100,高度为50.再组个不可见的矩形内部,想象一个与不可见矩形拥有相同宽度和高度的不可见椭圆。后两个参数指定这个不可见椭圆的可见部分。
drawArc的倒数第二个参数指定了起始角度,以度为单位。最后一个参数指定椭圆的弧线将持续多少度是可见的。椭圆水平线最右端的端点为0度。随着你以反时针方向移动椭圆边缘,度数逐渐增大。起始角度即为开始的角度,而后面的参数+-代表的是方向,数值代表的是弧长对应的度数。
java工程开发之图形化界面之(第一课)的更多相关文章
- java工程开发之图形化界面之(第二课)
上一节主要是讨论小的应用程序,在这里我们将采用一种全新的方式来重新编写它. 在这里我们注重关注JFrame和JOptionPane.这些类提供了在JAVA应用程序使用图形的方法以及在JAVA程序中对I ...
- java工程开发之图形化界面之(第五课)
下面我们将: 一)更加完整的解释Graphics类 二)使用方法来更清晰的重新编写前面图形小应用程序之一 三)介绍一些其他的绘图的方法 四)介绍方法init,它是类似于paint但是用于不同用途的另一 ...
- java工程开发之图形化界面之(第四课)
本节中,我们将创建一个小应用程序,它使用循环生成其图案.我们将使用if语句和setColor方法.同时我们将介绍drawString方法,并使用它在小应用程序窗口中写出文本. 下面的小应用程序是显示一 ...
- java工程开发之图形化界面之(第三课)
上面我们讲述了通过JOptionPane进行文本I/O操作,一个是通过JOptionPane来获取的 参考链接:http://blog.sina.com.cn/s/blog_993d254201013 ...
- 黑马程序员:Java基础总结----GUI图形化界面
黑马程序员:Java基础总结 GUI图形化界面 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! GUI(Graphical User Interface)图形化界 ...
- Java 图形化界面设计(GUI)实战练习(代码)
关于Java图形化界面设计,基础知识网上可搜,下面简单介绍一下重点概念,然后就由浅入深代码实例. 程序是为了方便用户使用的,Java引入图形化界面编程. 1.JFrame 是容器类 2.AWT 是抽象 ...
- 转:二十七、Java图形化界面设计——容器(JFrame)
转:http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计——容器(JFrame) 程序是为了方便用户使用的, ...
- 二十七、Java图形化界面设计——容器(JFrame)
摘自http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计--容器(JFrame) 程序是为了方便用户使用的, ...
- Java图形化界面设计——容器(JFrame)
Java图形化界面设计——容器(JFrame) 程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势,在命令提示符下运行的程序可以让我们了解java程序的基本知识体系结构 ...
随机推荐
- CSS传统布局之display属性+float属性+position属性
这三个属性是传统网页布局中经常用到的属性. 读这篇文章之前,希望你对css布局模型已经有了一定的了解.因为本文的三个属性是和css三个布局模型紧密联系在一起的.因此,如若你并不了解,我推荐你先看一下c ...
- Android Binder机制原理(史上最强理解,没有之一)(转)
原文地址: http://blog.csdn.net/universus/article/details/6211589 Binder是Android系统进程间通信(IPC)方式之一.Linux已经拥 ...
- 如何用脚本快速修改IP地址(Netsh)
如何用脚本快速修改IP地址(Netsh) 如果通过Windows的网络属性修改Ip/网关,真是太麻烦了.最近一个项目经常要切换ip,所以我写了两个脚本:c:\116.bat netsh interfa ...
- 十四、oracle 数据库管理--管理表空间和数据文件
一.概念表空间是数据库的逻辑组成部分.从物理上讲,数据库数据存放在数据文件中:从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或多个数据文件组成. 二.数据库的逻辑结构oracle中逻辑结构包括 ...
- 9---PIP 管理工具的使用
Python 不仅有强大的内置模块,还提供强大的三方模块. 官方网站: https://pypi.python.org/pypi 要适用三方的模块需要使用pip管理工具. 1.在安装pip前,请确认w ...
- webform在页面生成的代码与事件回传
<script type="text/javascript"> //<![CDATA[ var theForm = document.forms['form1'] ...
- VirtualBox中安装CentOS(新手教程)
1.VirtualBox下载 官网:http://www.virtualbox.org/wiki/Downloads 下载好之后,一路下一步安装即可 2.CentOS下载 官网:https://www ...
- 《剑指Offer》算法题——“旋转数组”的最小数字
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个非递减序列的一个旋转,输出旋转数组的最小元素.例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数 ...
- .NET下,关于文件夹权限设置的小细节
InheritanceFlags 指定哪些接受权限继承 InheritanceFlags.ContainerInherit 下级文件夹要继承权限. InheritanceFlags.None 下级文件 ...
- MFC中组合框CComboBox的使用
假如添加三行数据,其中当选择前两行时,提示自定义提示框信息,选择第三行时,提示当前字符串的内容,实现如下: void Cuse_demo_dllDlg::OnCbnSelchangeCombo1(){ ...