Main 변경 없이 바로 Scene Builder로
Boder Center 위에 Pane(400, 400)을 하나 올려줍니다.
그 위에
PieChart : Code : fx:id - pieChart
Button : Code : OnAction - javaSel
Button : Code : OnAction - csSel
Button : Code : OnAction - pySel
Button : Code : OnAction - jsSel
Controller Class 설정
package app; import java.net.URL; import java.util.ResourceBundle; import javax.swing.JScrollBar; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.chart.PieChart; import javafx.scene.chart.PieChart.Data; public class MainController implements Initializable{ @FXML private PieChart pieChart; // 개별데이터 -> 리스트 -> 파이차트에 set int java = 10; int cs = 10; int py = 10; int js = 10; ObservableList<Data> list = null; @Override public void initialize(URL location, ResourceBundle resources) { System.out.println("FXML 완"); list = FXCollections.observableArrayList(); list.add(new PieChart.Data("Java", java)); list.add(new PieChart.Data("C#", cs)); list.add(new PieChart.Data("Python", py)); list.add(new PieChart.Data("Java Script", js)); pieChart.setTitle("선호 언어"); // 타이틀 pieChart.setLabelsVisible(true); // 라벨 여부 pieChart.setData(list); // 데이터 적용 } public void javaSel() { // 버튼을 누를 때 파이 값 증가 java++; list.set(0, new Data("Java", java)); } public void csSel() { cs++; list.set(1, new Data("C#", cs)); } public void pySel() { py++; list.set(2, new Data("Python", py)); } public void jsSel() { js++; list.set(3, new Data("Java Script", js)); } }
'JavaFX > 01.Node 추가' 카테고리의 다른 글
[JAVA FX]01-13.BarChart (0) | 2018.09.11 |
---|---|
[JAVA FX]01-12.Line Chart, Random (0) | 2018.09.11 |
[JAVA FX]01-10.Progress Bar, Progress Indicator, Thread (0) | 2018.09.11 |
[JAVA FX]01-09.속성 감시, 속성 바인딩 (0) | 2018.09.10 |
[JAVA FX]01-08.Menu 바 추가 (0) | 2018.09.10 |