- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验报告
本程序主要运用java2D提供的强大画图功能,来画直线、椭圆、矩形。首先,是在工具栏中选择要绘制的图形,然后通过鼠标的拖拽来完成图形的绘制。
实现绘图面板
在绘图面板中要实现两个功能,一是跟踪鼠标事件,另一个是覆盖paint方法绘制图形。
鼠标的跟踪通过MouseListener接口来实现,在本绘图程序中,要实现其中的mousePressed和mouseReleased方法,即在开始单击鼠标左键(mousePressed)时,设置绘制图形的起始点,起始点的位置由MouseEvent类的getX和getY方法分别得到。在释放鼠标(mouseReleased)时,设置所绘制图形的终点,终点的位置也由getX和getY方法得到,同时利用两个点的位置信息绘制屏幕。代码如下:
public void mouseReleasedMouseEvent e
point[1]new Pointe.getX,e.getY;
}
public void mouseReleasedMouseEvent e
point[1]new Pointe.getX,e.getY; repaint;
}
Paint方法描述了组件的绘制方法,通过覆盖该方法,可绘制各种需要的图形。在本程序中,通过一个swith-case结构来设置绘制图形的类型。Shape参数来自于工具栏,通过drawShape方法传入,shape为0、1、2时画线、画圆、画矩形,它们分别通过Graphics类的drawLine、drawOval、drawRect方法完成。这部分的主要代码如下:switch shape case 0:
g.drawLinepoint[0].x,point[0].y,point[1].x,point[1].y;
break;
case 1:
int widthpoint[1].x-point[0].x;
int heightpoint[1].y-point[0].y;
g.drawOvalpoint[0].x,point[0].y,width,height;
break;
case 2:
widthpoint[1].x-point[0].x;
heightpoint[1].y-point[0].y;
g.drawRectpoint[0].x,point[0].y,width,height;break;
2.演示程序在用户界面上方设置了一个工具栏,包含3个按钮,这3个按钮组成按钮组,某时刻只能一个按钮被有选中。 在按钮的事件处理中,调用ActionEvent类的getSource方法得到事件源,将它与3个按钮进行比较,可得到事件来自于哪个按钮,并将这个参数通过PainterPanel类的drawShape方法传递到PainterPanel实例中,这样在发生鼠标拖拽时,就能根据shape的值来确定应该绘制哪种图形。主要代码如下:for int i0;ibutton.length;i++
if e.getSourcebutton[i]
painter.drawShapei;
本程序的运行效果如下图:
您可能关注的文档
最近下载
- SHS 01021—2019 螺杆压缩机维护检修规程.docx VIP
- 设备出厂检验报告.docx VIP
- 单元语法和配套练习 Unit 6 新版 2025年新外研版八年级上册.pdf
- 扶贫农产品协议书范本.docx VIP
- 考研真题 北京外国语大学中国外语教育研究中心外国语言学及应用语言学历年考研真题及详解.docx VIP
- SHS 01025—2019小型工业汽轮机维护检修规程.docx VIP
- 2025汽车驾驶员(技师)考试题及答案.pdf
- 幼儿园大班社会《勇气》有声PPT课件.pptx VIP
- 单元语法和配套练习 Unit 5 新版 2025年新外研版八年级上册.pdf
- HG∕T 6135-2022 非金属化工设备 玄武岩纤维增强塑料管道及管件.pdf
文档评论(0)