JavaFX Slider란?
JavaFX는 Slider라는 클래스를 제공하며, 이 클래스는 연속적인 값의 범위를 표시하는 슬라이더 컴포넌트를 나타냅니다. 슬라이더는 숫자 값이 표시되는 트랙(track)으로 구성되어 있으며, 트랙 위에는 현재 선택된 값을 가리키는 썸(thumb)이라 불리는 핸들이 함께 제공됩니다. 슬라이더를 생성할 때 최댓값, 최솟값, 그리고 초기값을 직접 지정할 수 있어 사용자 입력을 직관적으로 받을 수 있는 UI 요소입니다.
JavaFX에서 슬라이더를 만드는 방법
슬라이더를 만드는 과정은 크게 세 단계로 이루어집니다.
1. Slider 클래스 인스턴스화 – 생성자에 최솟값, 최댓값, 초기값을 순서대로 전달합니다.
2. 필요한 속성 설정 – 눈금 레이블 표시 여부, 눈금 단위 등 원하는 옵션을 지정합니다.
3. 장면(Scene)에 추가 – 레이아웃에 슬라이더를 넣고 Scene에 배치하여 화면에 출력합니다.
예제 코드
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Slider;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class SliderExample extends Application {
public void start(Stage stage) {
//Setting the slider
Slider slider = new Slider(0, 500, 0);
slider.setShowTickLabels(true);
slider.setShowTickMarks(true);
slider.setMajorTickUnit(100);
slider.setBlockIncrement(50);
//Creating a VBox
VBox vbox = new VBox();
vbox.setPadding(new Insets(50, 50, 50, 50 ));
vbox.setSpacing(150);
vbox.getChildren().addAll(slider);
//Preparing the scene
Scene scene = new Scene(vbox, 595, 150);
stage.setTitle("Slider Example");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}주요 속성 설명
- new Slider(0, 500, 0): 최솟값 0, 최댓값 500, 초기값 0으로 슬라이더를 생성합니다.
- setShowTickLabels(true): 눈금 값(레이블)을 화면에 표시합니다.
- setShowTickMarks(true): 트랙에 눈금선을 표시합니다.
- setMajorTickUnit(100): 주 눈금 간격을 100 단위로 설정합니다.
- setBlockIncrement(50): 트랙을 클릭했을 때 값이 50씩 증가 또는 감소하도록 설정합니다.
이 코드에서는 VBox 레이아웃을 사용해 슬라이더를 배치했으며, 패딩과 간격을 조절해 화면 구성을 정리했습니다. 마지막으로 Scene을 생성하고 Stage에 설정한 뒤 show() 메서드를 호출하면 슬라이더가 포함된 창이 실행됩니다.
실행 결과: