




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
14章Component类的常用方法,141组件的颜色组件使用下列方法设置颜色:(1)publicvoidsetBackground(Colorc)设置组件的背景色。(2)publicvoidsetForeground(Colorc)设置组件的前景色。(3)publicColorgetBackground()获取组件的背景色。(4)publicColorgetForeground()获取组件的前景色。上述方法中都涉及到Color类,Color类是java.awt包中的类,该类创建的对象称为颜色对象。用Color类的构造方法publicColor(intred,intgreen,intblue)可以创建一个颜色对象,其中red、green、blue的取值在0255之间。另外,Color类中还有red、blue、green、orange、cyan、yellow、pink等静态常量,都是颜色对象。Colorc=newColor(0,255,255);Btn.setBackground(Color.red);,142组件的字体,(1)publicvoidsetFont(Fontf)组件调用该方法设置组件上的字体。例如,文本组件调用该方法可以设置文本组件中的字体。(2)publicFontgetFont()组件调用该方法获取组件上的字体。上述方法中用到了javaawt包中的Font类,该类创建的对象称为字体对象。Font类的构造方法是:publicFont(Stringname,intstyle,intsize);使用该构造方法可以创建字体对象,其中name是字体的名字,如果系统不支持字体的名字,将取默认的名字创建字体对象。style决定字体的样式,取值是一个整数,有效取值是:Font.BOLD、Font.PLAIN、Font.ITALIC、Font.ROMAN_BASELINE、Font.CENTER_BASELINEFont.HANGING_BASELINE、Font.TRUETYPE_FONT例如,取值是Font.BOLD时,字体的样式是粗体。size参数决定字体的大小,单位是磅,例如取值12,就是我们熟悉的5号大小。在创建字体对象时,应当给出一个合理的字体名字,也就是说,程序所在的计算机系统上有这样的字体名字。如果在创建字体对象时,没有给出一个合理的字体名字,那么该字体在特定平台的字体系统名称为默认名称。,如果想知道,计算机上有哪些字体名字可使用,可以使用GraphicsEnvironment对象调用StringgetAvailableFontFamilyNames()方法,该方法获取计算机上所有可用的字体名称,并存放到字符串数组中。GraphicsEnviroment类是java.awt包中的抽象类,不能用构造方法创建对象,Java运行环境准备好了这个对象,只需让GraphicsEnvironment类调用它的类方法publicGraphicsEnvironmentstaticgetLocalGraphicsEnvironment()获取这个对象的引用即可,如下列代码所示:GraphicsEnvironmentge=GraphicsEnvironment.getLocalGraphicsEnvironment();StringfontName=ge.getAvailableFontFamilyNames();在font.java例题之中,我们就得到了字体并且改变文本区中的字体注:字体名称只对javax.swing包中的(轻)组件有效(见25章),对于java.awt包中的组件,系统将取默认的字体名称。,143组件的大小与位置,(1)publicvoidsetSize(intwidth,intheight)组件调用该方法设置组件的大小,参数width指定组件的宽度,height指定组件的高度。(2)publicvoidsetLocation(intx,inty)组件调用该方法设置组件在容器中的位置,包含该组件的容器都有默认的坐标系,容器的坐标系的左上角的坐标是(0,0),参数x、y指定该组件的左上角在容器的坐标系中的坐标,即组件距容器的左边界x个像素,距容器的上边界y个像素。(3)publicDimensiongetSize()组件调用该方法返回一个Dimension对象的引用,该对象实体中含有名字是width和height的成员变量,方法返回的Dimension对象的width的值就是组件的宽度、height的值就是当前组件的高度。(4)publicPointgetLocation()组件调用该方法返回一个Point对象的引用,该对象实体中含有名字是x和y的成员变量,方法返回的Point对象的x、y的值就是组件的左上角在容器的坐标系中的x坐标和y坐标。(5)publicvoidsetBounds(intx,inty,intwidth,intheight)组件调用该方法设置组件在容器中的位置和组件的大小。该方法相当于setSize方法和setLocation方法的组合。(6)publicRectanglegetBounds()组件调用该方法返回一个Rectangle对象的引用,该对象实体中含有名字是x、y、width和height的成员变量,方法返回的Rectangle对象的x、y的值就是组件的左上角在容器的坐标系中的x坐标和y坐标,width和height的值就是当前组件的宽度和高度。,Rectangle对象是一个很有用的对象。下面是Rectangle对象的常用方法。Rectangle(intx,inty,intwidth,intheight)创建一个左上角坐标是(x,y),宽是width,高是height的矩形。publicbooleanintersects(Rectanglerect)判断当前矩形是否和rect相交。publicbooleancontains(intx,inty)判断点(x,y)是否在当前矩形内。publicbooleancontains(intx,inty,intwidth,intheight)判断当前矩形是否包含参数所指定的矩形。publicbooleancontains(Rectanglerect)判断当前矩形是否包含参数所指定的矩形。publicRectangleintersection(Rectanglerect)得到当前矩形与rect相交部分所构成的矩形,如果当前矩形和rect不相交,就返回null。,144组件的激活与可见性,(1)publicvoidsetEnabled(booleanb)组件调用该方法可以设置组件是否可被激活,当参数b取值true时,组件可以被激活,当参数b取值false时,组件不可激活。默认情况下,组件是可以被激活的。(2)publicbooleanisEnabled()判断组件是否是可激活的,当组件是可激活状态时,该方法返回true。(3)publicvoidsetVisible(booleanb)设置组件在该容器中的可见性,当参数b取值true时,组件在容器中可见,当参数b取值false时,组件在容器中不可见。除了Window型组件外,其他类型组件默认是可见的。(4)publicbooleanisVisible()判断组件是否是可见的,当组件是可见时,该方法返回true。,145组件上的光标,publicvoidsetCursor(Cursorc)设置鼠标指向组件时的光标形状。使用Cursor类可以创建光标对象。Cousor类中有许多类常量,它们是:HAND_CURSOR,CROSSHAIR_CURSOR,TEXT_CURSOR,WAIT_CURSOR,SW_RESIZE_CURSOR,SE_RESIZE_CURSOR,NW_RESIZE_CURSOR,NE_RESIZECURSOR,N_RESIZE_CURSOR,S_RESIZE_CURSOR,W_RESIZE_CURSOR,E_RESIZE_CURSOR,HAND_CURSOR,MOVE_CURSOR.CUSTOM_CURSOR用这些类常量和类的构造方法可以创建标准的光标形状,例如:Cursorc=newCursor(Cursor.HAND_CURSOR);创建了一个“手”形的光标对象。另外,我们也可以使用Cursor类的类方法直接获得一个光标对象,例如:Cursorc=Cursor.getPredefinedCursor(Cursor.HAND_CURSOR);在下面的例子cursor中,有一个按钮button和一个标签。当单击按钮buRon时,该按钮横向移动,如果该按钮在移动过程中和标签相交,就将标签设置为不可见状态,然后按钮改为纵向移动。鼠标在容器区域时光标是HAND形状,当鼠标指向按钮时光标是MOVE形状。,146paint方法与repaint方法,Component类有一个方法:publicvoidpaint(Graphicsg),我们可以在其子类中重写这个方法。当重写这个方法时,相应的java运行环境将参数g实例化,这样我们就可以在类中使用g调用相应方法,比如画串、画图形。调用repaint方法时,程序首先清除paint()方法以前所画的内容,然后再调用paint方法。实际上当我们调用repaint()方法时,程序自动地去调用update(Graphicsg)方法,该方法也是Component类中的一个方法,这个方法的功能是,清除paint()方法以前所画的内容然后再调用paint方法。因此我们可以在子类中重写update方法(即隐藏父类的方法),据需要来清除哪些部分或保留哪些部分。在下面的例子143中,当单击“全部清除”按钮时,程序清除paint方法所绘制的全部内容,不再调用paint
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 7 生命最宝贵说课稿-2025-2026学年小学道德与法治三年级上册统编版(五四学制)
- 广东二模考试题及答案
- 古代科目三考试题及答案
- 创新创业导向下的计算机专业课程体系设计
- 格律诗考试题及答案
- 高考试题及答案哪里下载
- 2025年中国电子商务行业职业经理人合作合同
- 甘肃美术艺考试题及答案
- 建立心理健康社会支持网络与合作机制
- 汽车零部件生产项目社会稳定风险评估报告
- 2025年研发人员保密协议书
- 物流园区规章制度模版(2篇)
- 《多能源耦合供热系统》
- 《搞定:无压工作的艺术》完整课件
- 京东方岗位胜任力测评题库
- 印刷包装公司安全生产管理方案
- 高中数学64数列求和省公开课获奖课件市赛课比赛一等奖课件
- 二手车国庆节活动方案
- 人教版八年级上册地理教学计划及进度表
- 2025高考物理步步高同步练习必修3练透答案
- DZ∕T 0215-2020 矿产地质勘查规范 煤(正式版)
评论
0/150
提交评论