본문 바로가기
자바

자바 자바fx 날짜 색깔 DatePicker , ColorPicker [북붙따라하기]

by 세상 모든 것 들은 그 자신을 위해 존재한다. 2021. 1. 4.

DatePicker , ColorPicker

사용 예제 ) 코드를 복붙 하여 실행해 보시기 바랍니다.

설명은  주석과 코드 아랫부분에  있습니다.

1. 메인 파일 예제입니다.(title 만 다르고 내용이 거의 변하지 않습니다.)

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class AppMain extends Application {
	@Override
	public void start(Stage primaryStage) throws Exception {
		Parent root = (Parent)FXMLLoader.load(getClass().getResource("main.fxml"));
		Scene scene = new Scene(root);
		
		primaryStage.setTitle("Picker 예제 입니다.");
		primaryStage.setScene(scene);
		primaryStage.show();
		primaryStage.setAlwaysOnTop(true);
	}
	
	public static void main(String[] args) {
		launch(args);
	}
}

 

2. main.fxml  파일 예제입니다.

그대로 복붙 하여 테스트해보시면 됩니다.

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.ColorPicker?>
<?import javafx.scene.control.DatePicker?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextArea?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.text.Font?>

<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" style="-fx-border-color: black;" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="MainHandler">
   <children>
      <Label alignment="CENTER" layoutX="24.0" layoutY="24.0" prefHeight="30.0" prefWidth="550.0" style="-fx-border-color: blue;" text="아래의 버튼을 선택해 보세요.">
         <font>
            <Font size="24.0" />
         </font></Label>
      <Label layoutX="27.0" layoutY="259.0" style="-fx-border-color: green;" text="확인창" />
      <TextArea fx:id="textArea" layoutX="24.0" layoutY="285.0" prefHeight="89.0" prefWidth="550.0" style="-fx-border-color: green;" />
      <DatePicker fx:id="datePicker1" layoutX="24.0" layoutY="111.0" onAction="#selectatePicker1" />
      <Label layoutX="24.0" layoutY="81.0" text="DatePicker" />
      <ColorPicker fx:id="colorPicker1" layoutX="446.0" layoutY="111.0" onAction="#selectColorPicker1" />
      <Label layoutX="446.0" layoutY="89.0" text="ColorPicker" />
   </children>
</AnchorPane>

 

3. MainHandler.java 핸들러 파일입니다.

그대로 복붙 하여 테스트하시길 바랍니다.

import java.net.URL;
import java.util.ResourceBundle;

import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.ColorPicker;
import javafx.scene.control.DatePicker;
import javafx.scene.control.TextArea;
import javafx.scene.layout.Background;

public class MainHandler implements Initializable {

    @FXML
    private TextArea textArea;

    @FXML
    private DatePicker datePicker1;

    @FXML
    private ColorPicker colorPicker1;

    @FXML
    void selectatePicker1(ActionEvent event) {
    	
    	//선택된 날짜의 값을 문자열로 변환 해서 문자열에 저장합니다.
    	String strDate = datePicker1.getValue().toString();
    	
    	//저장된 문자열을 알림창에 출력합니다.
    	textArea.setText("선택한 날짜는 : "+strDate);
    }

    @FXML
    void selectColorPicker1(ActionEvent event) {

    	//선택된 칼라의 값을 문자열에 저장합니다.
    	String strColor = colorPicker1.getValue().toString();
    	

    	//저장된 문자열 교정후 을 알림창에 출력합니다.
    	String strLastColor = "#"+strColor.substring(2,8);
    	textArea.setText("교정후  색깔 : "+strLastColor);
    	
    }

	@Override
	public void initialize(URL location, ResourceBundle resources) {

	}

}

 

 

워낙 간단한 예제라 따로 설명할 부분이 없는 것 같습니다.

실행 영상 입니다.

 

 

728x90
반응형

댓글