学java大半年了,近来无聊,今天花了一天时间用swing做了一个图片浏览器,不同以前的用树形结构保存图片名称,这次是采用一个圆形浏览,当然看到的图片是放在一个椭圆周上,当转动图片查看下一张时,图片不是瞬间交换位置,而是有一个沿圆周的移动过程。动态移动过程贴不出来,贴两个静态效果图:
浏览界面效果:
右键点击某一个图查看原图的效果:
不知道图片能不能上传。
其实思路还是很简单的,一个继承自Ractangle2D的ImageArea,一个管理众多ImageArea的ImageFrame,一个显示ImageFrame的ImageShow,外加一个JFrame。显示上除了ImageShow面板外,还有一些额外的面板,比如监控内存,显示图片分组,左右旋转的按钮(其实可以不要,因为鼠标点击含有这个功能),打开文件夹按钮等。侦听器方面基本是完全自己根据鼠标的当前位置来判断动作,左转还是右转,转动还是查看原图片,等。
当然,要做到旋转式浏览图片,还是有一些细节的,比如给ImageArea设置zBuffer,以决定画图的先后顺序;旋转时实时更新zBuffer,以准确画出图片的位置和大小;旋转动作另设线程等。
还是有很多不足的,最大的就是内存了,,当图片很大时,显示太慢甚至不能显示,我的最大虚拟内存是64M,机器配置是赛扬M1.6G,很老的。我采用的粗劣的方法是,传参给底层ImageArea的是图片名称,要画时再加载图片,可是这样很伤CPU啊!图大时动作就超慢。可是如果传参Image,那就干脆在加载时就溢出了。。。不知道怎么解决才好,本人菜鸟。。
有时间再写细节。。
(图片素材来自网络)
- 大小: 134.3 KB
- 大小: 142.1 KB
分享到:
相关推荐
用户可以在软件内部打开一个类似于网页的界面,以幻灯片或网格形式浏览图片,享受类似于在线浏览图片的体验。这种模式可能还支持缩略图预览、全屏查看、自动播放等高级功能,从而提供更加沉浸式的看图环境。 Mana...
这款软件的核心功能包括单张图片浏览、连续滚动查看以及幻灯片式自动播放,极大地提升了用户查看图片的体验。 在Java编程中,图片查看器通常涉及到以下关键知识点: 1. **Swing或JavaFX库**:Java提供了Swing和...
该压缩包文件“图片浏览小程序(java+applet).zip”主要包含了使用Java语言开发的一款图片浏览应用程序的相关资源。这个程序可能是一个小程序,适用于桌面或Web环境,利用Java的Applet技术来实现。Applet是Java的一种...
这篇毕业设计论文主要探讨了如何使用Java技术和Applet来开发一个图片浏览小程序。Applet是Java编程语言中的一种特殊类,允许在Web浏览器中运行Java代码,为用户提供交互式的、跨平台的应用体验。以下是该设计的关键...
5. **预览与编辑**:内置的图片预览功能可以让用户在不离开软件的情况下查看照片,同时提供基本的编辑功能,如裁剪、旋转、调整亮度等。 6. **备份与同步**:为了防止数据丢失,软件应提供备份和恢复功能,同时支持...
用户可以使用这些元素浏览、选择和查看图片。因此,我们需要学习Swing或JavaFX库来创建和定制这些UI组件。 接着,我们要实现图片的加载功能。Java中的`javax.imageio`包提供了读取和写入图像的API,例如`ImageIO....
4. GUI工具:如果讨论的是一个图像查看器或编辑器,那么它可能有一个用户界面,允许用户浏览、放大、缩小、旋转和编辑图片。这些功能需要利用到操作系统提供的图形用户界面(GUI)工具包,如Windows的WinAPI、MacOS...
Java编写的相册浏览程序是一种基于Java编程语言开发的应用,用于管理和查看图片文件。这个程序可能包含了一系列的类和方法,使得用户能够方便地浏览、组织、搜索和分享他们的照片。下面将详细介绍Java在实现相册程序...
这个应用不仅涵盖了基本的图片浏览、管理功能,还可能包括上传、下载、编辑和分享照片等多种特性。在进行这样的毕业设计时,学生将有机会深入学习Java技术栈,包括Java Swing或JavaFX图形用户界面库,以及可能涉及到...
这个源码可以帮助开发者理解和学习如何在软件或应用程序中创建动态且交互式的3D图像浏览体验。3D相册不仅提升了传统相册的视觉表现力,还增加了用户与相册内容的互动性。 首先,我们要了解3D相册的基本原理。在...
2. **图形用户界面(GUI)设计**:PictureFinder 可能使用 JavaFX 或 Swing 这样的库来创建图形界面,以便用户能直观地浏览和搜索图片。理解如何布局组件、处理用户事件以及创建响应式界面是关键。 3. **文件I/O...
在IE编程方面,虽然Java主要用于服务器端开发,但早期的Java Applet技术允许Java代码在IE浏览器中运行,实现交互式的网页元素。不过,由于安全问题和现代Web技术的发展,Applets已经不再流行,现在更多使用...
作为开源软件,这个项目提供了一个可视化的平台,用户可以浏览、查看个人计算机中的图像文件。开源意味着源代码对公众开放,允许任何有技术背景的人查看、修改、甚至分发这个软件,促进了社区的合作和持续改进。 在...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...
有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...