0

我正在寻找一种方法来禁用 JComboBox() 中 addItem() 方法的 HTML 解析。

JComboBox jHighlight = new JComboBox();
for (int i = 0; i < tl.size(); i++) {
     //getTagname() returns a string like "br", "a", "body" or "html"
     jHighlight.addItem("<" + tl.get(i).getTagname() + ">");
}

JComboBox 中的输出将如下所示:

<a>
<br>
<body>
         //notice the blank space where <html> should be
<link>
<meta>

所以问题是html标签被解析了,因为我在它前面添加了一个<符号,我该如何解决这个问题?我尝试改用“\u003C”,但它仍然解析为 html,并且标签没有显示在列表中。

4

2 回答 2

1

我相信以下两种说法中的任何一种都可以做到:

highlight.putClientProperty("html.disable", true);  

highlight.putClientProperty(
    javax.swing.plaf.basic.BasicHTML.propertyKey, null
);  

如果您在某个中心位置创建和配置组件,您可能需要考虑为所有人设置它。组件支持中的 HTML 文本设计不好。

于 2009-05-26T11:36:30.177 回答
0

使用“<” 而不是“<” 并且(也许)将其包装在 HTML 中。;)

<html>&lt;html></html>
于 2009-05-26T11:25:11.557 回答