.. приложение с открытым исходным кодом, которое создает JFrame ..
Поскольку исходный код доступен, возьмите все, что он делает в кадре, и вместо этого сделайте это в апплете (с некоторыми небольшими вариантами и подсказками).
Некоторые типичные проблемы с использованием содержимого фрейма в апплете:
- Программисты могли установить графический интерфейс видимым в конструкторе, что означает, что вы не можете получить доступ к панели содержимого без отображения на экране свободно плавающего элемента GUI.
- Кастомная роспись прямо на раму. Там нет ничего подобного. Но тогда любой некомпетентный программист не должен в первую очередь «открывать» свой источник.
- Программист фреймов обычно использует
EXIT_ON_CLOSE
в качестве поведения выхода для фрейма. Запрещено (или необходимо) апплету в песочнице завершать виртуальную машину. Даже доверенный апплет будет (и должен) обычно не вызывать System.exit(int)
.
- Фрейм-код часто делает то, что требует доверия к апплету или альтернативных стратегий для достижения той же цели.
Пункты 3 и 4 менее применимы / актуальны, если кадр был спроектирован для запуска с помощью веб-запуска. И так как я упоминаю веб-старт ..
Обратите внимание, что обычно проще "преобразовать" кадр для запуска с помощью Java Web Start , чем для создания и развертывания апплета, либо для преобразования кадра в апплет. Если нет какой-либо функциональности апплета, которая является жизненно важной и недоступной для приложения (что маловероятно, если вы начали с приложением), я бы рекомендовал запустить приложение. через JWS вместо преобразования.