java重置StyleSheet规则

时间:2015-07-21 12:13:45

标签: java swing jeditorpane

我正在开展一个学校项目,我必须在java中创建一个HTML编辑器+查看器。所以我有一个带有按钮的主窗口,打开一个带预览的新窗口。问题是,每次打开预览时都不会重置规则!因此,如果你给了页面的背景,然后你移除了那个CSS它仍然会有背景颜色。

这是预览的代码:

public Preview(String html, String css) {
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        setBounds(100, 100, 783, 629);
        JPanel contentPane = new JPanel();
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        contentPane.setLayout(new BorderLayout(0, 0));
        setContentPane(contentPane);

        JScrollPane scrollPane = new JScrollPane();
        contentPane.add(scrollPane, BorderLayout.CENTER);

        JEditorPane editorPane = new JEditorPane();
        editorPane.setEditable(false);
        scrollPane.setViewportView(editorPane);

        HTMLEditorKit kit = new HTMLEditorKit();
        editorPane.setEditorKit(kit);

        StyleSheet styleSheet = kit.getStyleSheet();
        styleSheet.addRule(css);

        Document doc = kit.createDefaultDocument();
        editorPane.setDocument(doc);
        editorPane.setText(html);

        this.setVisible(true);
    }

我添加了保留它们的规则后检查并查看了这些内容,即使我创建了一个新的HTMLEditorKit,有什么方法可以避免它吗?

0 个答案:

没有答案