import javafx.application.Application; import javafx.stage.Stage; import javafx.scene.Scene; import javafx.scene.layout.VBox; import javafx.scene.layout.Pane; import javafx.scene.text.Font; import javafx.scene.text.Text; import javafx.scene.control.Button; import javafx.scene.control.TextField; import javafx.event.EventHandler; import javafx.event.ActionEvent; import javafx.geometry.Pos; public class Adder extends Application { // trenger tilgang til disse i KnappBehandler TextField tall1, tall2; // tallene TextField resultat; // svaret // indre klasse - handling som skal skje naar vi trykker paa knappene class KnappBehandler implements EventHandler { @Override public void handle(ActionEvent e) { /* // for ? f? tilgang til hvilken knapp - bruke teksten til ? skille // evt: ha ulike knappebehandlere for hver knapp Button trykket = (Button) e.getSource(); String knappeTekst = trykket.getText(); System.out.println(knappeTekst); */ double tallInn1 = 0.0; double tallInn2 = 0.0; try { tallInn1 = Double.parseDouble(tall1.getText()); // leser inn tall tallInn2 = Double.parseDouble(tall2.getText()); // leser inn tall } catch (NumberFormatException eksept) { System.out.println("Ikke tall"); return; } double svar = tallInn1 + tallInn2; resultat.setText(" " + svar); } } @Override public void start(Stage teater) { VBox kulisser = new VBox(); kulisser.setAlignment(Pos.CENTER); tall1 = new TextField("tall1"); Text pluss = new Text(" + "); tall2 = new TextField("tall2"); resultat = new TextField("resultat"); Button erLikKnapp = new Button("="); KnappBehandler handling = new KnappBehandler(); erLikKnapp.setOnAction(handling); kulisser.getChildren().addAll(tall1,pluss, tall2, erLikKnapp, resultat); teater.setTitle("Adderer"); teater.setScene(new Scene(kulisser, 250, 150)); teater.show(); } }