JavaFX in Java (JavaFX in Java), Lektion, Seite 722829
https://www.purl.org/stefan_ram/pub/javafx_java (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Java-Kurs

JavaFX  in Java 

class Calculator
{ public double calculate
( final char operator,
final double number1,
final double number2 )
{ final double result; switch( operator )
{ case '+': result = number1 + number2; break;
case '-': result = number1 - number2; break;
case '*': result = number1 * number2; break;
case '/': result = number1 / number2; break;
default: result = 0; break; }
return result; }}

public final class Main extends javafx.application.Application
{ private final javafx.scene.control.TextField n
= new javafx.scene.control.TextField();
private final javafx.scene.control.TextField m
= new javafx.scene.control.TextField();
private final javafx.scene.control.TextField r
= new javafx.scene.control.TextField();
final Calculator calculator = new Calculator();

final @java.lang.Override public void start
( final javafx.stage.Stage primaryStage )
{

final javafx.scene.control.MenuBar menuBar
= new javafx.scene.control.MenuBar();

final javafx.scene.control.Menu actionMenu
= new javafx.scene.control.Menu( "Aktion" );
final javafx.scene.control.Menu exitMenu
= new javafx.scene.control.Menu( "Beenden" );

menuBar.getMenus().addAll( actionMenu, exitMenu );

final javafx.scene.control.MenuItem addMenuItem
= new javafx.scene.control.MenuItem( "Addieren" );
final javafx.scene.control.MenuItem subtractMenuItem
= new javafx.scene.control.MenuItem( "Subtrahieren" );
final javafx.scene.control.MenuItem multiplyMenuItem
= new javafx.scene.control.MenuItem( "Multiplizieren" );
final javafx.scene.control.MenuItem menuItemDivide
= new javafx.scene.control.MenuItem( "Teilen" );

actionMenu.getItems().addAll
( addMenuItem, subtractMenuItem,
multiplyMenuItem, menuItemDivide );

final javafx.scene.control.MenuItem closeMenuItem
= new javafx.scene.control.MenuItem( "Schliessen" );

exitMenu.getItems().add( closeMenuItem );

final javafx.scene.layout.HBox hBox1
= new javafx.scene.layout.HBox( 10 );
n.setPrefColumnCount( 3 );
m.setPrefColumnCount( 3 );
r.setPrefColumnCount( 3 );
hBox1.getChildren().addAll
( new javafx.scene.control.Label( "Zahl 1:" ), n,
new javafx.scene.control.Label( "Zahl 2:" ), m,
new javafx.scene.control.Label( "Ergebnis:" ), r );
hBox1.setAlignment( javafx.geometry.Pos.CENTER );

final javafx.scene.layout.HBox hBox2
= new javafx.scene.layout.HBox( 10 );
final javafx.scene.control.Button addButton
= new javafx.scene.control.Button( "Addieren" );
final javafx.scene.control.Button subtractButton
= new javafx.scene.control.Button( "Subtrahieren" );
final javafx.scene.control.Button multiplyButton
= new javafx.scene.control.Button( "Multiplizieren" );
final javafx.scene.control.Button divideButton
= new javafx.scene.control.Button( "Dividieren" );
hBox2.getChildren().addAll
( addButton, subtractButton, multiplyButton, divideButton );
hBox2.setAlignment( javafx.geometry.Pos.CENTER );

final javafx.scene.layout.VBox vBox
= new javafx.scene.layout.VBox( 12 );
vBox.getChildren().addAll( menuBar, hBox1, hBox2 );
final javafx.scene.Scene scene
= new javafx.scene.Scene( vBox, 300, 100 );
primaryStage.setTitle( "Rechner" );
primaryStage.setScene( scene );
primaryStage.show();

addMenuItem.setOnAction( e -> perform( '+' ));
subtractMenuItem.setOnAction( e -> perform( '-' ));
multiplyMenuItem.setOnAction( e -> perform( '*' ));
menuItemDivide.setOnAction( e -> perform( '/' ));
closeMenuItem.setOnAction( e -> java.lang.System.exit( 0 ));

addButton.setOnAction( e -> perform( '+' ));
subtractButton.setOnAction( e -> perform( '-' ));
multiplyButton.setOnAction( e -> perform( '*' ));
divideButton.setOnAction( e -> perform( '/' )); }

private void perform( final char operator )
{ r.setText
( calculator.calculate
( operator,
java.lang.Double.parseDouble( n.getText()),
java.lang.Double.parseDouble( m.getText() )) + "" ); }; }

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722829 stefan_ram:722829 JavaFX in Java Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722829, slrprddef722829, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/javafx_java