读书人

利用Swing的Api兑现镜面效果

发布时间: 2012-12-23 11:28:15 作者: rapoo

利用Swing的Api实现镜面效果
可以使用算法实现镜面等各种效果,但也可以简单的通过使用Swing提供的方法实现一些特殊效果。
Swing自带了12种Composite,合理利用还是挺不错的.
源图像:

镜面效果:

at com.test.ReflectedImage.createReflectedImage(ReflectedImage.java:39)
at com.test.ReflectedImage.<init>(ReflectedImage.java:23)
at com.test.ReflectedImage.createGuiAndShow(ReflectedImage.java:80)
at com.test.ReflectedImage.access$0(ReflectedImage.java:78)
at com.test.ReflectedImage$1.run(ReflectedImage.java:93)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
我报了这个错误时怎么回事啊at com.test.ReflectedImage.createReflectedImage(ReflectedImage.java:39)
at com.test.ReflectedImage.<init>(ReflectedImage.java:23)
at com.test.ReflectedImage.createGuiAndShow(ReflectedImage.java:80)
at com.test.ReflectedImage.access$0(ReflectedImage.java:78)
at com.test.ReflectedImage$1.run(ReflectedImage.java:93)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
我报了这个错误时怎么回事啊
首先要把源图像下载下来保存为apple.png和这个Java的类放在同一个文件夹下,然后才能运行。
at com.test.ReflectedImage.createReflectedImage(ReflectedImage.java:39)
at com.test.ReflectedImage.<init>(ReflectedImage.java:23)
at com.test.ReflectedImage.createGuiAndShow(ReflectedImage.java:80)
at com.test.ReflectedImage.access$0(ReflectedImage.java:78)
at com.test.ReflectedImage$1.run(ReflectedImage.java:93)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
我报了这个错误时怎么回事啊
首先要把源图像下载下来保存为apple.png和这个Java的类放在同一个文件夹下,然后才能运行。


如果是用MyEclipse运行的话,那这个apple.png就得放到工程目录下才行 9 楼 jorneyR 2011-01-11 onlylau 写道jorneyR 写道kxys422834 写道
我报了这个错误时怎么回事啊
首先要把源图像下载下来保存为apple.png和这个Java的类放在同一个文件夹下,然后才能运行。


如果是用MyEclipse运行的话,那这个apple.png就得放到工程目录下才行
嘿嘿,Eclipse,MyEclipse的工作目录和类加载目录,很让人迷惑。 10 楼 juda 2011-01-14 楼主能不能把你做的那个边框的代码发上来,很谢谢 11 楼 jorneyR 2011-01-14 juda 写道楼主能不能把你做的那个边框的代码发上来,很谢谢
这个边框是系统自带的,我使用的是Mac,所以显示为这个样子。
不过相似的样子可以参考MacWidgets的实现,以后我也会考虑做个这方面的边框,毕竟会好看些:http://code.google.com/p/macwidgets/

读书人网 >编程

热点推荐