javax.jnlp.UnavailableServiceException: uninitialized問題

zhonghuaas zhonghuaas 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
//Loading, displaying and scaling an image in an applet

import java.awt.BorderLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.jnlp.FileContents;
import javax.jnlp.FileOpenService;
import javax.jnlp.ServiceManager;
import javax.swing.ImageIcon;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class LoadImageAndScale extends JApplet
{
private ImageIcon image;//references image to display
private JPanel scaleJPanel;//JPanel containing the scale-selector
private JLabel percentJLabel;//label for JTextField
private JTextField scaleInputJTextField;//obtains user's input
private JButton scaleChangeJButton;//initiates scaling of image
private double scaleValue = 1.0; //scale percentage for image

//load image when applet is loaded
public void init()
{
scaleJPanel = new JPanel();
percentJLabel = new JLabel("scale percent:");
scaleInputJTextField = new JTextField("100");
scaleChangeJButton= new JButton("Set Scale");

// add components and place scaleJPanel in applet's NORTH region
scaleJPanel.add(percentJLabel);
scaleJPanel.add(scaleInputJTextField);
scaleJPanel.add(scaleChangeJButton);
add(scaleJPanel,BorderLayout.NORTH);

//register event handler for scaleChangeJButton
scaleChangeJButton.addActionListener(
new ActionListener()
{
//when the JButton is pressed,set scaleValue and repaint
public void actionPerformed(ActionEvent e)
{
scaleValue = Double.parseDouble(
scaleInputJTextField.getText())/100.0;
repaint();//causes image to be redisplayed at new scale
}// end method actionPerformed
}//end anonymous inner class
);//end call to addActionListener

//use JNLP services to open an image file that the user selects
try
{
//get a reference to the FileOpenService
FileOpenService fileOpenService =
(FileOpenService) ServiceManager.lookup(
"javax.jnlp.FileOpenService");

//get file's contents from the FileOpenService
FileContents contents =
fileOpenService.openFileDialog(null, null);

//byte array to store image's data
byte[] imageData = new byte[(int) contents.getLength()];
contents.getInputStream().read(imageData);//read image bytes
image = new ImageIcon(imageData);//create the image

//if image successfully loaded,create and add DrawJPanel
add(new DrawJPanel(),BorderLayout.CENTER);
}//end try
catch(Exception e)
{
e.printStackTrace();
}// end catch
}//end method init

//DrawJPanel used to display loaded image
private class DrawJPanel extends JPanel
{
//display image
public void paintComponent(Graphics g)
{
super.paintComponent(g);

//the following values are used to center the image
double spareWidth=
getWidth()-scaleValue*image.getIconHeight();
double spareHeight=
getHeight()-scaleValue*image.getIconHeight();

//draw image with scaled width and height
g.drawImage(image.getImage(),
(int) (spareWidth)/2,(int)(spareHeight)/2,
(int) (image.getIconWidth()*scaleValue),
(int) (image.getIconHeight()*scaleValue),this);
}//end method paint
}//end class DrawJPanel

}//end class LoadImageAndScale
----------------------------------
以上是源码。在eclipse里编的,然后直接运行run。但没有出现“open”对话框。是和java start有关吗?如何达成效果啊,可以用eclipse做到吗?

----------------------------
javax.jnlp.UnavailableServiceException: uninitialized
at javax.jnlp.ServiceManager.lookup(Unknown Source)
at LoadImageAndScale.init(LoadImageAndScale.java:61)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


这是错误信息。
---------
没有出现“open”对话框,这是为什么啊?
...全文

相关推荐

科技中介服务机构想要提升服务效率,需要哪些数智工具支持?.docx

科技中介服务机构想要提升服务效率,需要哪些数智工具支持?

BIZKEEN

usb 扩容盘检测修复工具源码,编译产物

usb 扩容盘检测修复工具源码,编译产物

nLif

融合UWB和IMU割草机定位EKF研究(Matlab代码实现)

内容概要:本文主要介绍了一个名为“Plecs全桥LLC谐振变换器仿真模型”的技术资源,该资源聚焦于电力电子领域中的LLC谐振变换器建模与仿真,涵盖开环、闭环控制、软启动设计及参数优化等核心内容。文档不仅提供了LLC变换器的详细建模方法与仿真案例,还系统梳理了其在高效电源转换系统中的应用,包括隔离型全桥拓扑结构的设计与性能分析。此外,资源汇总了大量Matlab/Simulink仿真模型及相关科研方向,涉及新能源并网、储能控制、电机驱动等多个前沿领域,全面展示LLC谐振变换器在现代电力系统中的关键技术实现路径。同时,文档附带多种学习资料获取途径,如网盘链接和公众号资源,便于研究人员深入实践与拓展研究。; 适合人群:具备扎实的电力电子、自动控制理论基础,从事新能源发电、开关电源设计、电力系统仿真等相关领域的研究生、工程师及科研人员。; 使用场景及目标:①深入理解LLC谐振变换器的工作原理、建模方法与控制策略;②开展电力电子变换器的仿真验证与参数优化设计;③支撑科研项目、学位论文或工程项目的系统仿真与方案验证; 阅读建议:建议结合所提供的仿真模型与参考文献,使用Plecs或Simulink软件进行动手实践,重点掌握LLC谐振变换器的建模流程、闭环控制设计、软启动机制及参数调试技巧,以全面提升在实际工程中的应用与创新能力。

荔枝科研社

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)内容概要:本文主要介绍了基于Plecs的全桥LLC谐振变换器仿真模型,涵盖变频控制下的多相交错LLC谐振变换器闭环仿真、V2G电动汽车ACDC整流与双向CLLC谐振变换器充放电仿真、LLC谐振变换器的开环与闭环软启动设计,以及储能系统中双向Buck-Boost变换器结合模型预测电流控制和电压下垂控制的仿真研究。同时,文档列举了多种电力电子系统与控制策略的Simulink/Plecs仿真案例,涉及三相交错并联Buck变换器、三电平Buck直流变换器、单相Boost PFC电路等,展示了丰富的电力变换器建模与控制技术。此外,还包括参数设计报告、计算书及相关参考文献,适用于从事电力电子、新能源发电、电动汽车充放电系统等领域的研究人员和技术开发人员。; 适合人群:具备电力电子、自动控制理论基础,从事新能源、电动汽车、电力系统等相关领域研究的研发人员、高校研究生及高年级本科生。; 使用场景及目标:① 学习和掌握LLC谐振变换器及其他典型电力电子变换器的工作原理与建模方法;② 实现闭环控制策略如变频控制、软启动、模型预测控制、下垂控制等的仿真验证;③ 支持科研项目、毕业设计或工程开发中的系统仿真与优化设计。; 阅读建议:建议结合文中提供的仿真模型、设计报告与参考文献,逐步搭建并调试相应系统,重点关注控制策略的实现细节与参数整定过程,以深入理解系统动态响应特性与控制性能。

程序猿鑫

基于Java17、SpringBoot、vue3、antdv-next、uniapp等主流技术构建的全场景极速开发平台 MDP内置3个web端、1个移动端 重点解决用户中心、开发者平台、管理后台3个应

MDP-主数据平台,后端项目。专注于单点登录解决方案。内置用户中心、开发者平台、管理后台3个应用。包含:单点登录、Oauth2 登录、用户身份管理、应用申请、应用接入、主数据维护、主数据订阅、主数据广播、应用接口调用、接口管理管理和查看、系统配置等功能。

Java程序员-张凯
评论 2
收藏 已收藏
分享
返回顶部
zhonghuaas
Java SE 62,621 成员 307,251 内容