【问题标题】:Coloring specified character of String着色字符串的指定字符
【发布时间】:2021-10-24 19:54:30
【问题描述】:

我搜索了这个问题,找到了以下代码,但这些代码是针对 Java-Android 的。我可以在 Java 中使用哪些类似的代码

代码是:

ArrayList<Integer> positions = new ArrayList();
Pattern p = Pattern.compile("mp");  // insert your pattern here
Matcher m = p.matcher("Simple Text, bumping , jumping");
while (m.find()) {
    positions.add(m.start());
}

Spannable spanning = new SpannableString("Simple Text");        
spanning.setSpan(new ForegroundColorSpan(Color.BLUE),positions.get(i), positions.get(i)+1, 
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    
textview.setText(spanning);

【问题讨论】:

  • 我可以在 java Netbeans 中使用哪些类似的代码。 - Netbeans 不是 GUI。我们不知道您使用的是什么 GUI。是摇摆吗?是JavaFX吗?是别的吗?
  • 是的,我正在使用 swing .. 抱歉我没有指定
  • 阅读 Using Text Components 上的 Swing 教程,了解 Swing 基础知识。如果您想使用 HTML,请使用 JEditorPane。如果您想要样式化的文本,请使用 JTextPane。本教程包含两者的示例。
  • 我想你误解了我的问题,我需要更改单词中特定字符的颜色...这意味着我有单词 (Hello) 并且在某些情况下,字母 (o)应该是不同的颜色。
  • 不,我完全明白。您需要阅读教程并下载演示代码以了解如何执行此操作。 Swing 与 Android 不同,因此您需要阅读一些资料来了解它在 Swing 中是如何完成的。 Swing 使用Document 来保存文本和文本的属性。您可以为单个字符或文本段落设置属性。

标签: java string swing character foreground


【解决方案1】:

你在使用 Java Swing 吗?

如果是,您可以将"&lt;html&gt;YOUR TEXT&lt;/html&gt;" 与您的设计所需的自定义设置。

把它放在new JLabel("&lt;html&gt;YOUR...");里面,这是Java图形设计的原理,今天我们有了JavaFX,它将取代这些接口编程方法

【讨论】:

  • 是的,我当然试过了,但问题在于Spannable spanning = new SpannableString("Simple Text");,它给了我该行的错误。
  • SpannableString 是 Android 类,而不是 Swing 类。
  • 是的,亲爱的,我的问题是,如何为 java swing 获得相同的方法。
  • 这不是“相同的方法”。您已获得 Swing 教程的链接,该教程演示了如何在 Swing 中完成。
  • 我编辑了答案,兄弟去学习Java设计很常见。
【解决方案2】:

您的解决方案。

您可以更改标签的颜色。

将它添加到您在项目中使用的 jframe 或 jlabel 中。

谢谢

Label label = new Label("Your text");
//sets the colour of text
label.setForeground(Color.BLACK);
//sets the backround of text
label.setBackground(Color.BLUE);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-27
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 2020-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多