网站大量收购独家精品文档,联系QQ:2885784924

第9章文字与图形GUI设计.pptVIP

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Rectangle2D.Double rec1=new Rectangle2D.Double(20,80,60,30); g2.fill(rec1); g2.drawString(Rectangle2D,20,120); // fill RoundRectangle2D.Double g2.setStroke(new BasicStroke(4)); //设置线宽 RoundRectangle2D.Double rorec=new RoundRectangle2D.Double(100,80,60,30,10,10); g2.fill(rorec); g2.drawString(RoundRectangle2D,100,120); } } 该程序的运行结果如图9.8所示。 图9.8 程序c9_7的运行结果 9.4.3 绘制椭圆、圆及弧   在Java2D API中,绘制一个椭圆就是使用椭圆类的构造方法来创建一个椭圆对象。椭圆类的构造方法是:   Ellipse2D.Float(float x, float y, float w, float h)   这个构造方法中有4个参数,分别是椭圆外切矩形的左上角顶点坐标x,y;椭圆的宽度w和高度h(当然也是外切矩形的宽度和高度)。这些参数的数据类型可以是float型或double型。   显然,当椭圆的宽度w和高度h相等时,就是一个圆。因此,使用绘制椭圆的构造方法即可绘制圆。   画弧可看成是画部分椭圆。绘制一个弧的构造方法如下:   Arc2D.Float(float x, float y, float w, float h, float start,float extent, int type)   这个构造方法中有7个参数,其中:前4个参数x、y、w、h的含义与椭圆中参数的意义相同,另外3个参数中的start为起始角度,extent为弧角度,type为弧的连接类型。弧角度extent用度数来衡量,表明一段弧在两个角度之间绘制,即表示从起始角度转多少角度画弧,extent为正,表示逆时针画弧,extent为负,表示顺时针画弧。弧的连接类型有OPEN、CHORD、PIE三种,OPEN表示弧两端点无连接(弧),CHORD表示弧的两端点用直线连接(弦),PIE表示弧两端连接成扇形。 表9.8 创建椭圆及弧类对象的构造方法 下面我们通过一些实例来说明怎样来绘制这些图形。 ?【示例程序c9_8.java】 绘制椭圆、圆及扇形。 import java.applet.*; import java.awt.*; import java.awt.geom.*; import javax.swing.*; public class c9_8 extends Japplet   { public void paint(Graphics g)   { Graphics2D g2=(Graphics2D)g;    g2.setPaint(Color.red); //设置前景颜色    g2.setStroke(new BasicStroke(2));  //设置线宽    //绘制弧 g2.draw(new Arc2D.Double(15,15,80,80,60,125,Arc2D.OPEN)); g2.draw(new Arc2D.Double(100,15,80,80,60,125,Arc2D.CHORD)); g2.draw(new Arc2D.Double(200,15,80,80,60,125,Arc2D.PIE)); g2.fill(new Arc2D.Double(280,15,80,80,60,125,Arc2D.OPEN)); g2.drawString(Arc2D,100,90); //绘制圆及椭圆 g2.drawString(Ellipse2D,100,220); g2.setPaint(Color.lightGray); { //为保证方法可以访问绘图环境的全部功能,把g强制转换成Graphics2D Graphics2D g2=(Graphics2D)g; g2.drawString( s, 50, 25); g2.drawChars( c, 0, 2, 50, 50); //Graphics2D是Graphics的子类,可以继承Graphics类的方法 g2.drawBytes( b, 2, 5, 50, 75)

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档