Как сделать базовую разметку HTML внутри JPanel в Java Swing? - PullRequest
5 голосов
/ 15 июня 2011

Я хочу сделать что-то действительно простое, как это:

JPanel htmlPanel = new HtmlPanel("<html><body><h1>hello world</h1></body></html>");

Я думаю, что где-то видел код, который делал именно это.Как насчет CSS и JS?Можно ли заставить JPanel легко это поддерживать?Есть ли где-нибудь библиотеки, которые делают то, что я прошу?

Ответы [ 4 ]

5 голосов
/ 15 июня 2011

Отметьте здесь , чтобы узнать, как добавить поддержку CSS в JEditorPane . Вам понадобится HTMLEditorKit .

Я не понимаю, зачем вам нужна поддержка JavaScript для JEditorPane. Основное использование - визуализация страниц справки, написанных на HTML и CSS.

Если вам нужно встроить настоящий Маккой в ​​ваше приложение, попробуйте Lobo Java Web Browser . Lobo делает JavaScript и CSS и является 100% открытым исходным кодом Java.

Ноябрь 2015 : Последняя версия браузера Lobo - Lobo Evolution .

4 голосов
/ 15 июня 2011

Похоже, вы думали о JEditorPane.Он может отображать HTML, например, с URL. Учебник по Swing, панели редактора.

Поддержка javascript отсутствует.

Вы можете попробовать сторонние компоненты, такие как летающая тарелка ,который является рендерером XML / XHTML и CSS 2.1 в чистом Java.

2 голосов
/ 16 сентября 2012

В случае, если кто-то все еще ищет простое решение для включения отображения HTML-разметки: используйте JLabel и заключите текст в '' и '' (тег body не требуется).

Посмотрите Как использовать HTML в компонентах Swing .Я только сталкивался с этим, когда искал простой способ отображения данных в таблицах, и он работает как чудо.

0 голосов
/ 15 июня 2011

Был JWebPane , компонент Java, основанный на WebKit, но этот проект, похоже, давно умер и / или только что замолчал.Некоторые люди все еще надеются, что он будет выпущен. Другой, которого я знаю, это WebKit для SWT , но, похоже, он предназначен только для Win32.(

...