Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java에서 색상과 글꼴이 다른 JLabel 텍스트 구현하는 방법


JLabel이란?

  • JLabel 클래스는 JComponent 클래스를 상속하며, JLabel 객체는 GUI 화면에 텍스트 안내나 정보를 표시하는 역할을 합니다.
  • JLabel은 한 줄의 읽기 전용 텍스트, 이미지, 또는 텍스트와 이미지를 함께 표시할 수 있습니다.
  • JLabel<font size='글자 크기' color='텍스트 색상'> 표시할 텍스트 </font> 태그를 HTML 태그 내부에 사용하면, 서로 다른 색상과 글꼴이 적용된 한 줄의 텍스트도 표시할 수 있습니다.
  • JLabelPropertyChangeListener 인터페이스를 명시적으로 등록하여 속성 변화 이벤트를 처리할 수도 있습니다.

예제 코드

아래 예제는 하나의 JLabel에 서로 다른 크기와 색상의 텍스트를 함께 출력하는 방법을 보여줍니다.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MultiColorLabelTest extends JFrame {
   public MultiColorLabelTest() {
      setTitle("MultiColorLabel Test");
      setLayout(new FlowLayout());
      // 서로 다른 글꼴 크기와 여러 색상이 적용된 라벨
      JLabel label = new JLabel("<html><font size='5' color=blue> Welcome to</font> <font            size='6'color=green> Tutorials Point</font></html>");
      add(label);
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new MultiColorLabelTest();
   }
}

위 코드에서 주목할 점은 JLabel 생성자에 전달되는 문자열이 <html> 태그로 감싸져 있다는 것입니다. Swing 컴포넌트는 기본적으로 HTML 형식의 텍스트를 지원하기 때문에, HTML 태그를 활용하면 복잡한 커스텀 렌더러를 작성하지 않고도 간단하게 다양한 스타일을 적용할 수 있습니다.

실행 결과

Java에서 색상과 글꼴이 다른 JLabel 텍스트 구현하는 방법

프로그램을 실행하면 "Welcome to"라는 문구는 파란색 5크기로, "Tutorials Point"라는 문구는 초록색 6크기로 각각 다르게 표시됩니다. 이처럼 HTML의 <font> 태그를 조합하면 하나의 JLabel 안에서도 색상과 글꼴 크기를 자유롭게 섞어 사용할 수 있습니다.