Поскольку Вы не предоставили сайт, который используется, я объясню только некоторые части.
Во-первых, вам нужно скачать файл .JAR.
Во-вторых, вам нужно знать об основном классе, как правило, это называется «main.class».
В-третьих, для загрузки файла .jar файлов необходим код, похожий на приведенный ниже. Еще раз измените переменную «main.class» на фактически «.class».
URL url[] = {
new File(directory.concat("/gamepack.jar")).toURI().toURL()
};
URLClassLoader classLoader = new URLClassLoader(url);
applet = (Applet)classLoader.loadClass("main").newInstance();
applet.setBounds(0, 0, width, height);
applet.setBackground(Color.BLACK);
applet.setStub(stub);
applet.init();
applet.start();
mainFrame.getContentPane().add(applet);
Вы увидите метод "applet.setStub (заглушка)". Вам нужно будет создать класс AppletStub. То, что похоже на нижеследующее, будет достаточно.
package com;
import java.util.Map;
import java.util.HashMap;
import java.net.URL;
import java.applet.AppletStub;
import java.applet.AppletContext;
public class AppletEnvironment implements AppletStub
{
private final Map<String, String> PARAMETERS = new HashMap<String, String>();
private final URL URLBASE;
public AppletEnvironment(final URL URLBASE)
{
this.URLBASE = URLBASE;
}
public boolean put(String key, String param)
{
if (PARAMETERS.containsKey(key))
return false;
PARAMETERS.put(key, param);
return true;
}
@Override
public String getParameter(String name)
{
return PARAMETERS.get(name);
}
@Override
public URL getCodeBase()
{
return URLBASE;
}
@Override
public URL getDocumentBase()
{
return URLBASE;
}
@Override
public boolean isActive()
{
return true;
}
@Override
public AppletContext getAppletContext()
{
return null;
}
@Override
public void appletResize(int width, int height)
{
}
}
Теперь, чтобы выполнить эту работу, вам понадобится что-то вроде ниже. Таким образом, вы можете создать переменную «заглушка».
AppletEnvironment stub = new AppletEnvironment(url);
Вы заметите, что класс AppletEnvironment имеет метод «put (String key, String param)». Это должно быть сделано правильно. При анализе веб-сайта вы найдете параметры клиента, которые используются для генерации клиента. Если ни один не найден, вы можете игнорировать это. Если вы хотите увидеть, какие из них нужны.
Затем добавьте следующий код в «getParameter (String name)»; метод.
System.out.println(name);
Чтобы загрузить банку, используйте 'URLClassLoader'. Затем, чтобы получить экземпляр апплета, получите класс по имени из загрузчика классов и используйте 'Class # newInstance()'. Чтобы обрабатывать параметры, базу кода и т. Д., Вам нужно определить класс, реализующий «AppletStub» и «AppletContext», и в этом классе вернуть необходимые параметры (загруженные с веб-сайта или где-либо). Установите заглушку апплета на экземпляр вашего настраиваемого заглушки, используя 'Applet # setStub (AppletStub)', а затем просто вызовите 'Applet # init()' и 'Applet # start()' и, наконец, добавьте его в свой ' Область содержимого JFrame'. – Vulcan
* «Я пытаюсь создать JFrameable« загрузчик »одной из моих любимых игр Java» * Почему? Вы понимаете, что апплет обычно можно бесплатно плавать, просто запустив его с помощью [JWS] (http://stackoverflow.com/tags/java-web-start/info)? Что такое (URL-адрес) апплета? –
@AndrewThompson Одна из причин может заключаться в предоставлении инструментов/автоматизации, связанных с игрой, что делает необходимым «обернуть» игру в отдельном приложении. – Vulcan