该站点http://www.swingexplorer.com/上有一个SwingExplorer工具,该工具用于导航挥杆内容,但是如何将其应用到Applet?尤其是如果要将其集成到eclipse- plugin中,如何配置运行方式组态?
我想您需要向AppletViwer提供要运行的applet的参数,并让SwingExplorer导航AppletViewer(这又将运行您的applet类),但是我不知道如何将此类参数传递给AppletViwer,可以有人解释我该怎么做吗?
请注意,只需在applet顶部创建新框架并让其像往常一样运行,Swing应用程序将无法运行,因为它需要在类似浏览器的环境中运行。
它 是 可以提供一种基本的小应用程序 存根 对于在一帧被托管的小应用程序(一个桌面应用程序。)。applet 上下文的 几种方法很容易在应用程序中重现。其他的要么更难,不容易实现,要么与基于桌面的applet不相关。
此示例可以作为嵌入HTML的applet或applet查看器运行,也可以作为嵌入桌面组件的applet运行(特别是a,JOptionPane因为代码较短)。
JOptionPane
该示例改编自其中OP对applet参数更感兴趣的示例。此版本还增加了对报告文档和代码库的支持。
/* <applet code='DesktopEmbeddedApplet' width='400' height='100'> <param name='param' value='embedded in applet viewer or the browser'> </applet> */ import java.applet.*; import java.awt.*; import javax.swing.*; import java.io.File; import java.net.URL; import java.util.HashMap; public class DesktopEmbeddedApplet extends JApplet { public void init() { setLayout(new GridLayout(0,1)); String param = getParameter("param"); System.out.println("parameter: " + param); add(new JLabel(param)); add(new JLabel("" + getDocumentBase())); add(new JLabel("" + getCodeBase())); } public static void main(String[] args) { ApplicationAppletStub stub = new ApplicationAppletStub(); stub.addParameter("param", "embedded in application"); DesktopEmbeddedApplet pa = new DesktopEmbeddedApplet(); pa.setStub(stub); pa.init(); pa.start(); pa.setPreferredSize(new java.awt.Dimension(400,100)); JOptionPane.showMessageDialog(null, pa); } } class ApplicationAppletStub implements AppletStub { HashMap<String,String> params = new HashMap<String,String>(); public void appletResize(int width, int height) {} public AppletContext getAppletContext() { return null; } public URL getDocumentBase() { URL url = null; try { url = new File(".").toURI().toURL(); } catch(Exception e) { System.err.println("Error on URL formation! null returned." ); e.printStackTrace(); } return url; } public URL getCodeBase() { URL url = null; try { url = new File(".").toURI().toURL(); } catch(Exception e) { System.err.println("Error on URL formation! null returned." ); e.printStackTrace(); } return url; } public boolean isActive() { return true; } public String getParameter(String name) { return params.get(name); } public void addParameter(String name, String value) { params.put(name, value); } }