2012-10-15 29 views
2

如何将[1234|alink]这样的自定义字符串显示为链接“alink”作为文本,“1234”作为其位置而不用<a>标记替换它?
我的意思是像BBCode。在JEditorPane中显示自定义字符串作为链接

+0

你尝试用编辑器工具包(其实你只需要定义一个定制的解析器玩处理bbcodes)?应该可以通过继承/委托现有的HTMLEditorKit,然后通过在jeditorpanel实例上调用setEditorKit来实现。 – user486075

回答

2

我看到几个选项在这里:

  1. 您预处理您的字符串和您的代码转换为对应的HTML
  2. 你开始解析器/ DTD/EditorKit播放。

    a。您创建自己的语法(可能会耗时)

    b。您可以重复使用HTMLEditorKit(您需要扩展它),尝试向默认DTD添加更多信息以添加自定义元素(并因此使解析器返回您的其他元素),并扩展ViewFactory,以便渲染新元素有专门的意见。

从长远来看,选项2显然更好(尤其是如果您对高性能感兴趣),选项1实际上很容易实现。

请参阅以下链接,了解更多信息:

相关问题