5_第五章图形程序设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * ● 图形绘制 ● AWT事件处理机制 ● Swing用户界面组件 图形用户界面设计 图形绘制 ● 创建一个框架 ● 在面板中显示信息 ● 2D图形、颜色、字体 ● 图像 AWT事件处理机制 ● 事件处理基础 ● AWT事件 ● 鼠标事件 ● 键盘事件 第五章 图形程序设计 ● 创建一个框架 ●组件 ●基本组件(例如,JButton,JTextField) ●容器(例如,JFrame,JPanel) ●顶层窗口 ●JFrame常用方法 setVisible,setTitle,setSize,setIconImage,setJMenuBar,setResizable, setLocation,setBounds,… 例:SimpleFrameTest.java ●框架居中 例:CenteredFrameTest.java ●框架 ● 创建一个框架 瓶 框架 (0,0) (x,y) 屏幕 屏幕高度 屏幕宽度 框架 高度 框架宽度 ● 在面板中显示信息 ●通常,在面板上绘制信息,然后将面板添加到框架中 ●向框架中添加组件,常用格式如下 Container contentPane=getContentPane( );//取得内容窗格对象 组件类 c=new …; contentPane.add(c) ; //JDK5.0中 组件类 c=new … add(c) ; ● 在面板中显示信息 ●为了在面板中进行绘制,需要实现 (1)定义一个扩展JPanel的新类 (2)重写paintComponent方法 注意:永远不要自己调用该方法,如果需要强制重绘屏幕,调用repaint方法;也可 扩展JComponent类。 例:HelloWorld.java class MyPanel extends JPanel { public void paintComponent(Graphics g) {… } } 包含绘制图形、图像和文本的方法 g.drawString( “Hello world”,75,100): ● 2D图形 ●Graphics中提供了很多方法绘制图形;Java 2D类库中实现了更强大的图形操作集,使用Graphics2D中提供的方法进行绘制。 public void paintComponent(Graphics g) { Graphics2D g2=(Graphics2D )g; } ●Java 2D库使用面向对象的方式组织几何形体。例如,分别有不同的类代表直线,矩形和椭圆:Line2D , Rectangle2D , Ellipse2D Rectangle rect=…; g2.draw(rect); ●2D图形 ● 2D图形 ●Java 2D图形使用浮点数坐标,内部使用float类型,但考虑到操作float有时不方便,因而为每个图形类提供两个版本。 Rectangle2D.Float floatRect=new Rectangle2D.Float(10.0f,25.0f,22.0f,20.0f); Rectangle2D.Double doubleRect=new Rectangle2D.Double(10.0,25.0,22.0,20.0); Rectangle2D floatRect= new Rectangle2D.Float(10.0f,25.0f,22.5f,20.0f); Rectangle2D doubleRect=new Rectangle2D.Double(10.0,25.0,22.5,20.0); 左上角位置,宽,高 ● 2D图形 ● 直线 Line2D line=new Line2D.Double(startx,starty,endx,endy); g2.draw(line); //使用左上顶点的坐标、宽度和高度 Rectangle2D doubleRect=new Rectangle2D.Double(startx,starty,width,height); //使用对角线上的两个顶点 Rectangle2D doubleRect=new Rectangle2D.Double( ); doubleRect.setFrameFromDiagonal(x1,y1,x2,y2); ● 矩形 startx,starty endx,endy startx,starty width height ● 2D图形 ● 椭圆 //使用外接矩形的左上顶点坐标、宽度和高度 Ellipse2D e=new Ellipse2D.D

文档评论(0)

海川电子书城 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档