JTextArea에서 텍스트 색상 사용자 정의
일반 텍스트를 표시하는 데 일반적으로 사용되는 구성 요소인 JTextArea는 특정 텍스트의 색상을 사용자 정의할 수 있는 유연성이 부족합니다. 문서 내의 세그먼트. 이 수준의 제어를 달성하려면 대신 JTextPane을 사용하는 것이 좋습니다.
JTextPane은 텍스트의 다양한 부분에 고유한 색상을 할당하는 기능을 포함하여 텍스트 서식을 조작하기 위한 강력한 기능 세트를 제공합니다. 이러한 사용자 정의를 수행할 수 있는 방법은 다음과 같습니다.
import java.awt.*; import javax.swing.*; import javax.swing.text.*; public class TextCustomization { public static void main(String[] args) { // Create a JTextPane for displaying the text JTextPane textPane = new JTextPane(); // Create a SimpleAttributeSet to control text attributes SimpleAttributeSet blueAttributeSet = new SimpleAttributeSet(); StyleConstants.setForeground(blueAttributeSet, Color.BLUE); SimpleAttributeSet greenAttributeSet = new SimpleAttributeSet(); StyleConstants.setForeground(greenAttributeSet, Color.GREEN); SimpleAttributeSet redAttributeSet = new SimpleAttributeSet(); StyleConstants.setForeground(redAttributeSet, Color.RED); SimpleAttributeSet orangeAttributeSet = new SimpleAttributeSet(); StyleConstants.setForeground(orangeAttributeSet, Color.ORANGE); // Set the text and apply color attributes to specific segments String text = "LOAD R1, 1\nDEC R1\nSTORE M, R1\nADD R4, R1,8"; textPane.setText(text); // Color specific words textPane.setParagraphAttributes(blueAttributeSet, true); textPane.setCaretPosition(0); textPane.setSelectedTextColor(Color.BLUE); textPane.setSelectionStart(0); textPane.setSelectionEnd(4); textPane.replaceSelection("LOAD"); textPane.setParagraphAttributes(greenAttributeSet, true); textPane.setCaretPosition(5); textPane.setSelectedTextColor(Color.GREEN); textPane.setSelectionStart(5); textPane.setSelectionEnd(7); textPane.replaceSelection("R1,"); textPane.setParagraphAttributes(redAttributeSet, true); textPane.setCaretPosition(9); textPane.setSelectedTextColor(Color.RED); textPane.setSelectionStart(9); textPane.setSelectionEnd(10); textPane.replaceSelection("M"); textPane.setParagraphAttributes(orangeAttributeSet, true); textPane.setCaretPosition(12); textPane.setSelectedTextColor(Color.ORANGE); textPane.setSelectionStart(12); textPane.setSelectionEnd(13); textPane.replaceSelection("R1,"); } }
이 예에서 코드 조각은 특정 키워드("LOAD," "DEC," "STORE," "ADD,")의 색상을 변경하는 방법을 보여줍니다. "R1", "M" 및 숫자)를 지정된 색상(파란색, 녹색, 빨간색, 주황색)으로 지정합니다. 적절한 속성을 설정하고 선택한 텍스트 세그먼트를 교체하면 JTextPane 내의 텍스트 모양을 사용자 정의할 수 있습니다.
위 내용은 JTextArea의 특정 세그먼트 내에서 텍스트 색상을 어떻게 사용자 정의할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!