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

JavaFX에서 텍스트에 취소선과 밑줄을 적용하는 방법

JavaFX에서 텍스트 노드는 javafx.scene.text.Text 클래스로 표현됩니다. JavaFX 창에 텍스트를 삽입하거나 표시하려면 다음 단계를 따라야 합니다.

  • Text 클래스의 인스턴스를 생성합니다.
  • 세터(setter) 메서드를 사용하거나 생성자의 인수로 전달하여 위치, 문자열 등 기본 속성을 설정합니다.
  • 생성된 노드를 Group 객체에 추가합니다.

취소선(Strikethrough) 적용하기

javafx.scene.text.Text 클래스의 strikethrough 속성은 텍스트의 각 줄 중앙을 가로지르는 직선을 표시할지 여부를 결정합니다. 이 속성의 값은 setStrikethrough() 메서드를 사용하여 설정할 수 있으며, boolean 값을 인수로 받습니다. 이 메서드에 true를 전달하면 텍스트 노드에 취소선이 적용됩니다.

밑줄(Underline) 적용하기

같은 클래스의 underline 속성은 텍스트의 각 줄 아래에 직선을 표시할지 여부를 결정합니다. 이 속성의 값은 setUnderline() 메서드를 통해 설정할 수 있으며, 역시 boolean 값을 인수로 받습니다. 이 메서드에 true를 전달하면 텍스트 노드 아래에 밑줄이 그려집니다.

예제 코드

import java.io.FileNotFoundException;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
public class Underline_StrikeThrough extends Application {
   public void start(Stage stage) throws FileNotFoundException {
      //텍스트 객체 생성
      String str = "Welcome to Tutorialspoint";
      Text text = new Text(30.0, 80.0, str);
      //폰트 설정
      Font font = Font.font("Brush Script MT", FontWeight.BOLD, FontPosture.REGULAR, 65);
      text.setFont(font);
      //텍스트 색상 설정
      text.setFill(Color.DARKCYAN);
      //스트로크의 너비와 색상 설정
      text.setStrokeWidth(2);
      text.setStroke(Color.DARKSLATEGRAY);
      //텍스트에 밑줄 적용
      text.setUnderline(true);
      //텍스트에 취소선 적용
      text.setStrikethrough(true);
      //스테이지 설정
      Group root = new Group(text);
      Scene scene = new Scene(root, 595, 150, Color.BEIGE);
      stage.setTitle("Underline And Strike-through");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

실행 결과

위 코드를 실행하면 지정한 폰트와 색상으로 표시된 텍스트에 취소선과 밑줄이 동시에 적용된 것을 확인할 수 있습니다. setUnderline(true)과 setStrikethrough(true) 두 메서드 호출만으로 손쉽게 텍스트 스타일을 변경할 수 있습니다.