Swing/Highlighter のバックアップ(No.29)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/Highlighter へ行く。
- 1 (2005-12-05 (月) 11:02:14)
- 2 (2005-12-16 (金) 17:21:48)
- 3 (2006-02-27 (月) 16:02:12)
- 4 (2007-03-05 (月) 01:55:16)
- 5 (2007-09-29 (土) 17:21:38)
- 6 (2007-11-28 (水) 19:12:19)
- 7 (2007-11-28 (水) 20:25:31)
- 8 (2008-08-28 (木) 02:20:11)
- 9 (2008-09-01 (月) 13:47:05)
- 10 (2009-10-16 (金) 00:12:47)
- 11 (2009-10-16 (金) 13:04:32)
- 12 (2009-10-16 (金) 17:42:07)
- 13 (2010-12-06 (月) 22:32:19)
- 14 (2013-03-21 (木) 15:53:32)
- 15 (2013-08-27 (火) 18:16:20)
- 16 (2013-08-28 (水) 12:29:27)
- 17 (2013-10-18 (金) 21:42:32)
- 18 (2014-02-04 (火) 14:58:03)
- 19 (2014-11-10 (月) 00:02:45)
- 20 (2014-11-25 (火) 03:03:31)
- 21 (2014-12-19 (金) 14:27:34)
- 22 (2015-03-20 (金) 15:21:42)
- 23 (2016-05-27 (金) 15:40:30)
- 24 (2016-05-29 (日) 23:29:19)
- 25 (2016-06-03 (金) 13:27:15)
- 26 (2017-09-13 (水) 17:57:36)
- 27 (2017-12-01 (金) 18:20:12)
- 28 (2019-04-09 (火) 20:11:24)
- 29 (2021-01-27 (水) 21:18:07)
- 30 (2023-12-31 (日) 19:27:47)
- category: swing folder: Highlighter title: Highlighterで文字列をハイライト tags: [JTextComponent, Highlighter] author: aterai pubdate: 2005-12-05T11:02:14+09:00 description: Highlighterを使ってテキスト中の文字列を強調表示します。 image:
概要
Highlighter
を使ってテキスト中の文字列を強調表示します。
Screenshot
Advertisement
サンプルコード
jtc.getHighlighter().removeAllHighlights();
try {
Highlighter highlighter = jtc.getHighlighter();
Document doc = jtc.getDocument();
String text = doc.getText(0, doc.getLength());
Matcher matcher = Pattern.compile(pattern).matcher(text);
int pos = 0;
while (matcher.find(pos) && !matcher.group().isEmpty()) {
pos = matcher.end();
highlighter.addHighlight(matcher.start(), pos, highlightPainter);
}
} catch (BadLocationException | PatternSyntaxException ex) {
ex.printStackTrace();
}
View in GitHub: Java, Kotlin解説
テキストコンポーネントからHighlighter
を取得し、Highlighter#addHighlight(...)
メソッドで検索した文字列を追加していきます。
上記のサンプルでは、ハイライト色をDefaultHighlighter.DefaultHighlightPainter
を使って指定しています。
参考リンク
- Highlighter#addHighlight(...) (Java Platform SE 8)
- Swing - Searching text in files & highlighting that text
- JTextPaneで検索結果のハイライト表示と文字色変更を同時に行う