JDK 6 update 10以上的版本中有个很新颖的特性,运行在浏览器中的Applet可以直接用鼠标托拽到桌面上,关闭浏览器器后,这个Applet依旧可以运行。下面介绍可托拽Applet的运行环境,用NetBeans 6.5 开发可托拽Applet的步骤,以及如何用Web Start调用Applet。
一.运行开发环境
可托拽Applet需要的运行环境:
1。安装JDK 6 update 10及以上的版本。(下载地址:http://java.sun.com/javase/downloads/?intcmp=1281)
2。浏览器支持。目前只有IE6,IE7和Firefox 3。
安装NetBeans 6.5。(下载地址:http://www.netbeans.org/)
二。NetBeans 6.5 开发可托拽Applet的步骤。
1. 创建项目,NetBeans中,File -> New Project, 打开“New Project”窗口,"Categories"选择“Java”, "Projects" 选择“ Java Class Library”, 点击“Next”。如下图 。
在下一个“Name and Location”窗口中,“Project Name”栏目中输入项目名,比如“DraggableApplet”, 点击“Finish”。如下图。
2. 创建Applet。NetBeans中,选中刚创建的项目,打开菜单“File -> New File...”, 出现“New File”窗口,“Categories”中选择“Java”, “File Type”中选择“Applet”, 点击“Next”。如下图。
在自动生成的NewApplet.java中添加显示“Hello World”字符串的代码。如下图。
public void paint(Graphics g) { g.drawString("Hello World",50,50); } |
3. 选中“NewApplet.java”文件,鼠标右击,在弹出菜单中选择“Run File ”。如下图
4.运行Applet的结果是在“小程序查看器“中看到刚刚创建的"Hello World"Applet, 如下图。
通常,Applet是运行在浏览器中的。NetBeans运行Applet的同时, 还在项目的"Build"目录下自动创建了html文档。注意在"Files" Tab(不是"Projects"Tab)找到"Build"目录, 和"NewApplet.html"文件. 在NewApplet.html中增加一个关键参数 Draggable, 如下代码和图.
5. 可以直接从NetBeans中打开浏览器. 鼠标右键点击"NewApplet.html",选择“View”, 如下图。
运行结果如下:
6. 下面开始激动人心的托拽了。按住“Alt” 键,鼠标点击并按住Applet, 可以把Applet 拖出浏览器,放到桌面上。
上图中,“Hello World”Applet已经被拖到了桌面上,原有在浏览器中的位置现显示一个Java Logo。如果关闭“Hello World”Applet, 那么这个Applet又会回到浏览器中。缺省设置下,按住Alt键,鼠标可以在桌面上移动Applet。关闭浏览器器后,这个“Hello World”Applet仍然运行。
脱离了浏览器的“Hello World”Applet运行在内存中,如果希望Applet类库能保存在本地,并且从本地启动的话,可以采用Web Start技术。JavaTM Web Start 是基于 Java 技术的应用程序的一种部署解决方案。它是连接计算机和 Internet 的便捷通道,允许用户在完全脱离 Web 的情况下运行和管理应用程序。Java Web Start 提供一次单击激活应用程序的简易方法,并保证始终运行应用程序的最新版本,从而可避免复杂的安装或升级过程。
三。为Applet设置Web Start
1. 为Applet设置Web Start启动,鼠标右键点击项目,选择“Project Properties”, 出现窗口。“Categories”选择“Application -> Web Start”,选中检查项“Enable Web Start”,点击“OK”。
2. Web Start 启动应用程序,需要有Main Class。现在为NewApplet.java增加一个“public void static main(String args[])”方法,创建一个Frame, 并把Applet加入到Frame中。代码如下(Note: 以下代码为演示而写,不具有普遍参考性)。
public static void main(String args[]){ final Frame appletFrame = new Frame("Applet Web Start"); appletFrame.addWindowListener(new WindowAdapter(){ public void setClosingAction(WindowEvent e){ System.exit(0); } }); appletFrame.setVisible(true); NewApplet dragApplet = new NewApplet(); appletFrame.add(dragApplet, BorderLayout.CENTER); appletFrame.pack(); dragApplet.init(); dragApplet.start(); } |
还需要在“Project Properties” 窗口中,为“Run" 设置“Main Class”。如下图。
3. 鼠标右键点击“DraggableApplet”项目,选择“build”。NetBean会自动在“”目录下生成三个文件。DraggableApplet.jar, luanch.html, launch.jnlp. 如下图。
JNLP(Java Network Launching Protocol, Java网络加载协议,JSR 56 )经常与"Web Start"一起被提及。JNLP协议通过XML, 定义了怎么加载Web Start应用程序。JNLP文件包括一些信息,比如Jar包的位置,应用程序的main class, 以及一些参数设置。
4. 在文件浏览器中双击“launch.jnlp”, 就可以运行Web Start启动的Applet了,如下图。
四。进阶
这个演示程序仅使用了AWT组件, 而如果希望Applet的界面更美观, 开发更方便快捷, 可以使用NetBeans中的"Swing GUI Form", 能够可视化地在Applet中加入Swing(JFC)组件。下面这个链接演示了一个界面更丰富的可拖拽到桌面的Applet,使用了JFreeChart and JXLayer。
http://www.jroller.com/dgilbert/entry/jfreechart_and_jxlayer
Applet也可以集成到Web应用程序中,下面这个链接介绍了如何在NetBeans中实现这个功能。http://www.netbeans.org/kb/61/web/applets.html
Applet技术出现于1985年,而Web Start技术出现于2001年。在Java技术领域,目前这两样技术都不算流行,现在重新把它们拿出来介绍,是因为JavaFX的诞生。JavaFX依赖Applet和Web Start,某种程度上可以说,JDK 6 update 10版本的发布,就是为了配合JavaFX的推出,更多JavaFX的介绍,可以参考JavaFX 网站http://www.javafx.com, 中文JavaFX网站(http://developer.sun.com.cn/javafx/index.jsp)。
五。参考
http://java.sun.com/javase/technologies/desktop/javawebstart/index.jsp
http://en.wikipedia.org/wiki/Java_Web_Start
http://java.sun.com/javase/6/webnotes/6u10/plugin2/index.html#EXPERIMENTAL_FUNCTIONALITY
http://java.sun.com/developer/technicalArticles/javase/6u10_applets/index.html
https://jdk6.dev.java.net/plugin2/
http://java.sun.com/developer/technicalArticles/javase/newapplets/
分享到:
相关推荐
本教程介绍了 Rust 的基础语法、所有权模型、函数与模块设计,以及高级特性(如错误处理、闭包和并发编程)。通过提供实用的练习和答案,帮助您快速掌握 Rust 的核心概念,为系统级编程打下扎实基础。
基于springboot+Web的毕业设计选题系统源码数据库文档.zip
# 基于Spring和MyBatis的疫情防控管理系统 ## 项目简介 本项目是一个基于Spring和MyBatis框架的疫情防控管理系统,旨在实现数据在管理员、医务人员、患者和数据上报者之间的流转。系统涵盖了用户登录、注册、信息管理、预约管理、检测结果管理等功能,支持多角色的权限管理和数据操作。 ## 项目的主要特性和功能 1. 用户管理 用户登录、注册和登出功能。 用户个人信息管理,包括核酸检测记录和预约记录。 2. 管理员管理 管理员列表管理,支持增删改查操作。 医院信息管理,支持增删改查操作。 3. 医务人员管理 核酸预约和疫苗接种预约管理。 核酸检测结果和疫苗接种结果管理。 患者信息管理。 4. 数据上报者管理 风险区域数据上报。 患者信息上报。 5. 系统安全 通过拦截器实现用户登录状态检查,未登录用户将被重定向到登录页面。
对数据集进行二分类,有数据集和源码以及模型,二分类是识别猫和不是猫的情况,可做毕业设计。
最新完美版积分商城系统,网购商城系统源码,是更新的奇偶商城系统源码, 它拥有独立代理后台,而且内附搭建教程。 企业猫搭建了下,感觉这个源码很新颖的,购买商品后可以选择直接发货还是拆红包升级购买的商品升级成别的商品。
编译好的Linux版网络调试助手,方便直接使用,免得每次都需要重新编译
office使用软件
# 基于Python和Flask的博客管理系统 ## 项目简介 本项目是一个基于Python和Flask框架的博客管理系统,旨在为用户提供一个简单易用的博客平台。用户可以注册、登录、发布博客、管理博客内容以及评论等功能。 ## 项目的主要特性和功能 1. 用户管理 用户注册和登录功能。 用户个人信息管理。 2. 博客管理 发布、编辑和删除博客文章。 博客分类和标签管理。 3. 评论系统 用户可以对博客文章进行评论。 评论的查看和管理。 4. 权限管理 管理员可以管理用户和博客内容。 普通用户只能管理自己的博客和评论。 ## 安装使用步骤 1. 环境准备 确保已安装Python 3.x。 安装Flask框架pip install Flask。 2. 数据库配置 在config.py文件中配置数据库连接信息。
基于springboot+vue的实践性教学系统源码数据库文档.zip
基于springboot二手物品交易系统源码数据库文档.zip
基于springboot餐品美食论坛源码数据库文档.zip
人工智能开发项目深度学习项目源码带指导视频词云提取方式是百度网盘分享地址
基于springboot企业员工薪酬管理系统源码数据库文档.zip
基于springboot+JavaWeb图书管理系统源码数据库文档.zip
数据库设计管理课程设计系统设计报告(powerdesign+sql+DreamweaverCS)销售管理系统设计与开发提取方式是百度网盘分享地址
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
基于springboot的小说阅读平台源码数据库文档.zip
# 基于PaddleDetection框架的人流量统计系统 ## 项目简介 本项目是一个基于PaddleDetection框架的人流量统计系统,专注于静态和动态场景下的人员计数和行人检测。项目涵盖了从数据准备、模型选择、训练、评估、优化到预测和部署的完整流程,旨在提供高效、准确的人流量统计解决方案。 ## 主要特性和功能 多模型支持支持多种模型选择,如DeepSORT、JDE和FairMOT,适用于多目标追踪场景。 模型优化提供多种优化策略,包括数据增强、可变形卷积、syncbn+ema、attention和GIoU Loss,以提升模型精度。 性能加速支持TensorRT推理加速,显著提升模型性能。 数据增强提供多种数据增强方式,如cutmix、syncbn和ema,进一步优化模型性能。 模型导出支持模型导出,便于模型部署和上线。 ## 安装使用步骤 1. 安装PaddleDetection框架 bash
基于springboot的银行信用卡额度管理系统源码数据库文档.zip
# 基于Arduino的蒸发冷却系统 ## 项目简介 本项目旨在创建一个蒸发冷却系统(即沼泽冷却器),这是一种在干燥炎热气候下提供能源效率替代空调的系统。该系统使用Arduino 2560和各种传感器来监控和控制冷却过程。 ## 项目的主要特性和功能 水位监控通过水位传感器监控水箱中的水位,并在水位过低时发出警报。 温度和湿度显示在LCD屏幕上显示空气温度和湿度。 风扇控制根据温度范围控制风扇电机。 系统开关通过用户按钮控制系统的开关。 日志记录记录电机激活和停用的时间和日期。 ## 安装使用步骤 2. 硬件连接按照项目文档中的电路图连接所有硬件组件,包括水位传感器、LCD显示屏、实时时钟模块、DHT11传感器和风扇电机。 3. 上传代码将下载的代码上传到Arduino 2560开发板。 4. 启动系统通过用户按钮启动系统,观察LCD屏幕上的温度和湿度显示,并监控水位传感器的状态。