반응형
방법2가지
1. Main에 직접 코딩. 2. sample.fxml 불러오기(sample.fxml에 코딩하기)
1. sample.fxml 대신 Main에 직접 코딩 시,
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.geometry.Pos;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.GridPane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
// Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
//위의 sample.fxml 대신하는 code V
GridPane root = new GridPane();
root.setAlignment(Pos.CENTER);
root.setHgap(10);
root.setVgap(10);
// 내용 추가(Label) V
Label greeting = new Label("Welcome to JavaFX"); // 내용 define
greeting.setTextFill(Color.GREEN); // 칼라변경 make sure you import color class
greeting.setFont(Font.font("Arial", FontWeight.BOLD, 45));
//글자스타일, 글자진하게, 글자크기 변경.
root.getChildren().add(greeting); // 내용추가.(이거써야 글자 띄어짐.)
//창 제목 / 창 크기
primaryStage.setTitle("안녕하셈");
primaryStage.setScene(new Scene(root, 400, 275));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
2. sample.fxml 이용시
글자 추가. 글자색,글자크기, 글자진하게 변경.
Main- 창 start, stop 창크기 등 기본
sample.fxml - 내용 쓸거 코딩
<Main> -
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.geometry.Pos;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.GridPane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
// //위의 sample.fxml 대신하는 code
// GridPane root = new GridPane();
// root.setAlignment(Pos.CENTER);
// root.setHgap(10);
// root.setVgap(10);
//
// // 내용 추가(Label)
// Label greeting = new Label("Welcome to JavaFX"); // 내용 define
//
// greeting.setTextFill(Color.GREEN); // 칼라변경 make sure you import color class
// greeting.setFont(Font.font("Arial", FontWeight.BOLD, 45));
// //글자스타일, 글자진하게, 글자크기 변경.
//
// root.getChildren().add(greeting); // 내용추가.(이거써야 글자 띄어짐.)
//창 제목 / 창 크기
primaryStage.setTitle("안녕하셈");
primaryStage.setScene(new Scene(root, 400, 275));
primaryStage.show();
}
<Sample.fxml> 파일.----> //참조 기능이 없음 (실행시 지워야 오류없음.)
<?import javafx.geometry.Insets?>
<?import javafx.scene.layout.GridPane?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.text.Font?>
<GridPane fx:controller="sample.Controller" //runtime => pacakage.class
xmlns:fx="http://javafx.com/fxml" alignment="center" hgap="10" vgap="10">
<Label text = "Welcome to JavaFX!" textFill="green"> //label define 글자 정의 V
<font>
<Font name = "Arial bold" size = "70"/> //글자스타일/ 진하게(bold) /사이즈
</font>
</Label> // 마무리 V
</GridPane>
'JavaCode(review)' 카테고리의 다른 글
java fx - Hbox Layout (0) | 2020.07.21 |
---|---|
java fx - GridPane Layout (0) | 2020.07.20 |
collections challenge 종합 (0) | 2020.07.17 |
Map.entry -collections / unmodifiable Map (0) | 2020.07.16 |
Map, Set - collections 개념 간단 비교정리 (0) | 2020.07.16 |