빨대 0의 알코올 도수를 마이크로 거리로 나눈 응용 프로그램으로 JavaFX 시작
입문
여러분 술 좋아하세요?
나는 술을 매우 좋아한다. 아마 술도 나를 좋아할 것이다일.
최근에 각양각색의 캔 조정기를 발매했는데, 나도 매일 집에 돌아와서 늦게 술을 마시고 잠이 들었다.
그러나 최근의 탱크 조정기는 모 스트롱을 비롯한 9% 이상이 증가했다.
나도 모르게 알코올 도수가 높은 물건을 사기 쉽지만 건강에 해롭다고 생각하면 떨리고 매일 술을 마시지 않으면 잠을 이루지 못한다.
이런 가운데 직장 친구에게 "마이크로 깨면 된다"이 는 말에 감동하면서 술을 술로 나눌 때의 알코올 도수는?그래서 JavaFX로 계산된 데스크톱 프로그램을 만들어 봤어요.
JavaFX
다음은 위키백과에서 인용한 것이다
JavaFX(JavaFX)는 Java 가상 컴퓨터에서 일하는 인터넷 응용 프로그램(RIA)의 GUI 라이브러리입니다.Java SE7Update2 이후 표준 탑재.Swing과 달리 FXML로 불리는 XML과 CSS를 사용하여 디자인을 설명합니다.
어렴풋이 스윙의 후계자 느낌이죠.
Swing의 UI도 모두 Java로 써야 하니 지옥 같지만 JavaFX에서는 FXML이라는 파일에서 디자인을 추출했기 때문에 Java로 UI를 쓰지 않을 것 같습니다.
환경 구축 및 프로젝트 작성
제가 이 보도를 참고하도록 허락해 주십시오.
[초초보자를 위한] JavaFX 초입문
프로젝트 구성, Main 클래스에 대한 설명이 완전히 복사되었습니다.
Scene Builder는 위젯을 드래그하여 UI 구성을 완료하는 데 매우 편리합니다.
이런 느낌이에요.
주의점으로 자바 SE11부터 Oracle JDK의 무상판이 사라지고 OpenJDK를 사용하는 사람이 대다수를 차지하지만 OpenJDK는 자바 FX를 포함하지 않는다.
이번 대응도 번거롭기 때문에 Eclipse에서 프로젝트를 만들 때 자바8을 선택했다.
그나저나 대처법도 있어요.
OpenJFX+OpenJDK에서 JavaFX 이동
OpenJDK11에서 JavaFX 가져오기
컨트롤러에 FXML 연결
Scene Builder에서 UI를 만들고 저장하면 FXML 파일에 저장됩니다.
이번에 만든 FXML 파일이 여기 있습니다.
이름이 설정되지 않았습니다.fxml<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
<children>
<TextField layoutX="69.0" layoutY="98.0" />
<TextField layoutX="300.0" layoutY="98.0" />
<TextField layoutX="69.0" layoutY="201.0" />
<TextField layoutX="300.0" layoutY="201.0" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" />
</children>
</Pane>
실제로 하고 싶은 일은 계산할 단추를 눌렀을 때 4개의 폼에 입력된 값을 얻어 계산하기 때문에 단추를 누르거나 fxml 파일을 수정하여 자바의 컨트롤러 클래스에서 4개의 폼에 입력된 값을 받아들일 수 있도록 하는 것이다.
그리고 완성된 건 여기예요.
Main.fxml<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controller.AlcoholController">
<children>
<TextField layoutX="69.0" layoutY="98.0" fx:id="amountFst" />
<TextField layoutX="300.0" layoutY="98.0" fx:id="alcoholFst" />
<TextField layoutX="69.0" layoutY="201.0" fx:id="amountSec" />
<TextField layoutX="300.0" layoutY="201.0" fx:id="alcoholSec" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" fx:id="button" onAction="#onClick" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" fx:id="result" />
</children>
</Pane>
fx:
시작하는 태그가 추가되었습니다.
먼저 FXML 파일과 연관된 Controller를 최대 패널의 기술 섹션fx:controller
에 기술합니다.
TextField를 추가합니다fx:id
.이것은 디렉터 변수와 뒤에 연결됩니다.onAction
에서 Button을 정의합니다onClick
.
버튼을 누르면 onClick이라는 메서드가 시작됩니다.
위의 FXML에 따라 컨트롤러를 생성합니다.
AlcoholController.javapackage controller;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
public class AlcoholController implements Initializable {
@FXML
private TextField amountFst;
@FXML
private TextField alcoholFst;
@FXML
private TextField amountSec;
@FXML
private TextField alcoholSec;
@FXML
private Button button;
@FXML
private Label result;
@Override
public void initialize(URL location, ResourceBundle resources) {
}
@FXML
public void onClick(ActionEvent event) {
}
}
이런 느낌이에요.@FXML
방금 정의한 FXML 파일과 관련이 있는 것 같습니다.
그리고 onClick에 간단한 계산을 쓰면 완성됩니다.
이것은 알코올 9퍼센트의 긴 탱크를 미향으로 깨뜨릴 때의 알코올 도수다.
너는 이것이 매우 건강한 수치라는 것을 발견할 수 있을 것이다.
그리고 Eclipse에서 실행할 수 있는jar로 쓰면 좋은 응용 프로그램이 될 거예요.
마지막
Swing을 써본 경험도 있지만 Scene Builder가 상당히 편리하기 때문에 Swing보다 훨씬 수월합니다.
자바의 코드 자체도 유창하기 때문에 쉽게 읽을 수 있고 며칠 게으름을 피워도 날짜가 비어 있으면 충분히 읽을 수 있다.
이번에 쓴 소스는 Github에게 주는 것이니 가능하면 참고하세요.
https://github.com/SomeyaHotaka/AlcoholCalc
나는 이 소프트웨어로 건강한 생활을 하고 싶다.
그럼 안녕히 계세요.
짝사랑의 가능성도 있다. ↩
나는 무엇이 문제없는지 모르겠다. ↩
Reference
이 문제에 관하여(빨대 0의 알코올 도수를 마이크로 거리로 나눈 응용 프로그램으로 JavaFX 시작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/NekonoNikukyu/items/e8909b16e5693ed52b25
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
다음은 위키백과에서 인용한 것이다
JavaFX(JavaFX)는 Java 가상 컴퓨터에서 일하는 인터넷 응용 프로그램(RIA)의 GUI 라이브러리입니다.Java SE7Update2 이후 표준 탑재.Swing과 달리 FXML로 불리는 XML과 CSS를 사용하여 디자인을 설명합니다.
어렴풋이 스윙의 후계자 느낌이죠.
Swing의 UI도 모두 Java로 써야 하니 지옥 같지만 JavaFX에서는 FXML이라는 파일에서 디자인을 추출했기 때문에 Java로 UI를 쓰지 않을 것 같습니다.
환경 구축 및 프로젝트 작성
제가 이 보도를 참고하도록 허락해 주십시오.
[초초보자를 위한] JavaFX 초입문
프로젝트 구성, Main 클래스에 대한 설명이 완전히 복사되었습니다.
Scene Builder는 위젯을 드래그하여 UI 구성을 완료하는 데 매우 편리합니다.
이런 느낌이에요.
주의점으로 자바 SE11부터 Oracle JDK의 무상판이 사라지고 OpenJDK를 사용하는 사람이 대다수를 차지하지만 OpenJDK는 자바 FX를 포함하지 않는다.
이번 대응도 번거롭기 때문에 Eclipse에서 프로젝트를 만들 때 자바8을 선택했다.
그나저나 대처법도 있어요.
OpenJFX+OpenJDK에서 JavaFX 이동
OpenJDK11에서 JavaFX 가져오기
컨트롤러에 FXML 연결
Scene Builder에서 UI를 만들고 저장하면 FXML 파일에 저장됩니다.
이번에 만든 FXML 파일이 여기 있습니다.
이름이 설정되지 않았습니다.fxml<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
<children>
<TextField layoutX="69.0" layoutY="98.0" />
<TextField layoutX="300.0" layoutY="98.0" />
<TextField layoutX="69.0" layoutY="201.0" />
<TextField layoutX="300.0" layoutY="201.0" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" />
</children>
</Pane>
실제로 하고 싶은 일은 계산할 단추를 눌렀을 때 4개의 폼에 입력된 값을 얻어 계산하기 때문에 단추를 누르거나 fxml 파일을 수정하여 자바의 컨트롤러 클래스에서 4개의 폼에 입력된 값을 받아들일 수 있도록 하는 것이다.
그리고 완성된 건 여기예요.
Main.fxml<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controller.AlcoholController">
<children>
<TextField layoutX="69.0" layoutY="98.0" fx:id="amountFst" />
<TextField layoutX="300.0" layoutY="98.0" fx:id="alcoholFst" />
<TextField layoutX="69.0" layoutY="201.0" fx:id="amountSec" />
<TextField layoutX="300.0" layoutY="201.0" fx:id="alcoholSec" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" fx:id="button" onAction="#onClick" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" fx:id="result" />
</children>
</Pane>
fx:
시작하는 태그가 추가되었습니다.
먼저 FXML 파일과 연관된 Controller를 최대 패널의 기술 섹션fx:controller
에 기술합니다.
TextField를 추가합니다fx:id
.이것은 디렉터 변수와 뒤에 연결됩니다.onAction
에서 Button을 정의합니다onClick
.
버튼을 누르면 onClick이라는 메서드가 시작됩니다.
위의 FXML에 따라 컨트롤러를 생성합니다.
AlcoholController.javapackage controller;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
public class AlcoholController implements Initializable {
@FXML
private TextField amountFst;
@FXML
private TextField alcoholFst;
@FXML
private TextField amountSec;
@FXML
private TextField alcoholSec;
@FXML
private Button button;
@FXML
private Label result;
@Override
public void initialize(URL location, ResourceBundle resources) {
}
@FXML
public void onClick(ActionEvent event) {
}
}
이런 느낌이에요.@FXML
방금 정의한 FXML 파일과 관련이 있는 것 같습니다.
그리고 onClick에 간단한 계산을 쓰면 완성됩니다.
이것은 알코올 9퍼센트의 긴 탱크를 미향으로 깨뜨릴 때의 알코올 도수다.
너는 이것이 매우 건강한 수치라는 것을 발견할 수 있을 것이다.
그리고 Eclipse에서 실행할 수 있는jar로 쓰면 좋은 응용 프로그램이 될 거예요.
마지막
Swing을 써본 경험도 있지만 Scene Builder가 상당히 편리하기 때문에 Swing보다 훨씬 수월합니다.
자바의 코드 자체도 유창하기 때문에 쉽게 읽을 수 있고 며칠 게으름을 피워도 날짜가 비어 있으면 충분히 읽을 수 있다.
이번에 쓴 소스는 Github에게 주는 것이니 가능하면 참고하세요.
https://github.com/SomeyaHotaka/AlcoholCalc
나는 이 소프트웨어로 건강한 생활을 하고 싶다.
그럼 안녕히 계세요.
짝사랑의 가능성도 있다. ↩
나는 무엇이 문제없는지 모르겠다. ↩
Reference
이 문제에 관하여(빨대 0의 알코올 도수를 마이크로 거리로 나눈 응용 프로그램으로 JavaFX 시작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/NekonoNikukyu/items/e8909b16e5693ed52b25
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Scene Builder에서 UI를 만들고 저장하면 FXML 파일에 저장됩니다.
이번에 만든 FXML 파일이 여기 있습니다.
이름이 설정되지 않았습니다.fxml
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
<children>
<TextField layoutX="69.0" layoutY="98.0" />
<TextField layoutX="300.0" layoutY="98.0" />
<TextField layoutX="69.0" layoutY="201.0" />
<TextField layoutX="300.0" layoutY="201.0" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" />
</children>
</Pane>
실제로 하고 싶은 일은 계산할 단추를 눌렀을 때 4개의 폼에 입력된 값을 얻어 계산하기 때문에 단추를 누르거나 fxml 파일을 수정하여 자바의 컨트롤러 클래스에서 4개의 폼에 입력된 값을 받아들일 수 있도록 하는 것이다.그리고 완성된 건 여기예요.
Main.fxml
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controller.AlcoholController">
<children>
<TextField layoutX="69.0" layoutY="98.0" fx:id="amountFst" />
<TextField layoutX="300.0" layoutY="98.0" fx:id="alcoholFst" />
<TextField layoutX="69.0" layoutY="201.0" fx:id="amountSec" />
<TextField layoutX="300.0" layoutY="201.0" fx:id="alcoholSec" />
<Button layoutX="503.0" layoutY="201.0" mnemonicParsing="false" text="計算する" fx:id="button" onAction="#onClick" />
<Label layoutX="33.0" layoutY="103.0" text="1." />
<Label layoutX="33.0" layoutY="206.0" text="2." />
<Label layoutX="240.0" layoutY="103.0" text="ml" />
<Label layoutX="240.0" layoutY="206.0" text="ml" />
<Label layoutX="471.0" layoutY="103.0" text="\%" />
<Label layoutX="471.0" layoutY="206.0" text="\%" />
<Label layoutX="100.0" layoutY="285.0" prefHeight="48.0" prefWidth="401.0" fx:id="result" />
</children>
</Pane>
fx:
시작하는 태그가 추가되었습니다.먼저 FXML 파일과 연관된 Controller를 최대 패널의 기술 섹션
fx:controller
에 기술합니다.TextField를 추가합니다
fx:id
.이것은 디렉터 변수와 뒤에 연결됩니다.onAction
에서 Button을 정의합니다onClick
.버튼을 누르면 onClick이라는 메서드가 시작됩니다.
위의 FXML에 따라 컨트롤러를 생성합니다.
AlcoholController.java
package controller;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
public class AlcoholController implements Initializable {
@FXML
private TextField amountFst;
@FXML
private TextField alcoholFst;
@FXML
private TextField amountSec;
@FXML
private TextField alcoholSec;
@FXML
private Button button;
@FXML
private Label result;
@Override
public void initialize(URL location, ResourceBundle resources) {
}
@FXML
public void onClick(ActionEvent event) {
}
}
이런 느낌이에요.@FXML
방금 정의한 FXML 파일과 관련이 있는 것 같습니다.그리고 onClick에 간단한 계산을 쓰면 완성됩니다.
이것은 알코올 9퍼센트의 긴 탱크를 미향으로 깨뜨릴 때의 알코올 도수다.
너는 이것이 매우 건강한 수치라는 것을 발견할 수 있을 것이다.
그리고 Eclipse에서 실행할 수 있는jar로 쓰면 좋은 응용 프로그램이 될 거예요.
마지막
Swing을 써본 경험도 있지만 Scene Builder가 상당히 편리하기 때문에 Swing보다 훨씬 수월합니다.
자바의 코드 자체도 유창하기 때문에 쉽게 읽을 수 있고 며칠 게으름을 피워도 날짜가 비어 있으면 충분히 읽을 수 있다.
이번에 쓴 소스는 Github에게 주는 것이니 가능하면 참고하세요.
https://github.com/SomeyaHotaka/AlcoholCalc
나는 이 소프트웨어로 건강한 생활을 하고 싶다.
그럼 안녕히 계세요.
짝사랑의 가능성도 있다. ↩
나는 무엇이 문제없는지 모르겠다. ↩
Reference
이 문제에 관하여(빨대 0의 알코올 도수를 마이크로 거리로 나눈 응용 프로그램으로 JavaFX 시작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/NekonoNikukyu/items/e8909b16e5693ed52b25
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(빨대 0의 알코올 도수를 마이크로 거리로 나눈 응용 프로그램으로 JavaFX 시작), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/NekonoNikukyu/items/e8909b16e5693ed52b25텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)