Aufgabenblatt 9 – NetBeans - Einführung Aufgabe 1 Erstellen Sie einen Währungsrechner, mit dem Sie von Euro in Dollar (oder eine andere Währung Ihrer Wahl) umrechnen können. Schritt 1 Erstellen Sie ein neues Projekt in NetBeans (Java, Java Applikation). Beim Erstellen des neuen Projektes muss darauf geachtet werden, dass die Checkbox bei “Create Main Class” nicht angeklickt ist. Schritt 2 Für die Benutzungsoberfläche brauchen wir eine neue Klasse. Wählen Sie aus dem Menü File! New File, dann die Kategorie “Swing GUI Forms” und “JFrame Form”. Schritt 3 Sehen Sie sich in der Quellcode-Ansicht im Editorfenster den generierten Quelltext an. Schalten Sie wieder in die Designansicht und gestalten Sie die Oberfläche. Schritt 4 Für die oben angegebene Oberfläche brauchen wir 4 Labels, 3 Textfelder und 2 Buttons. Ändern Sie den Standardtext der Labels wie folgt: jLabel1 jLabel2 jLabel3 jLabel4 Währungsrechner Kurs Dollar Euro Tragen Sie geeignete Startwerte in die Textfelder ein. Beschriften Sie die Buttons. Schritt 5 – Event handling Das Programm soll nun auf Ereignisse reagieren. Wenn der Button gedrückt wurde, soll eine Umrechnung stattfinden. Gehen Sie in die Design-Ansicht und klicken Sie auf den Button für die Umrechnung von Dollar in Euro, den Sie erzeugt haben. Klicken Sie dann mit der rechten Maustaste und wählen Sie Events! Action ! Action Performed. Es öffnet sich die Quelltextansicht. Folgender Quelltext muss nun hinzugefügt werden (beachten Sie die blau hervorgehobenen Bezeichner für die Textfelder, hier müssen Sie die Bezeichner aus Ihrem Programm verwenden, die eventuell andere sind): double kurs = Double.parseDouble(jTextField3.getText()); double dollar = Double.parseDouble(jTextField1.getText()); double euro = dollar / kurs; DecimalFormat df = new DecimalFormat("#.##"); jTextField2.setText(df.format(euro)); Schritt 6 Schreiben Sie die Umrechnungsmethode für die Umrechnung von Euro in Dollar. Schritt 7 Fügen Sie einen Button zum Beenden des Programmes hinzu. Der Quelltext für das Beenden lautet: System.exit(1); Aufgabe 2 (Hausaufgabe für 16.6.) Erstellen Sie ein neues Projekt zur Arbeit mit Listen. Erstellen Sie eine Klasse für die Oberfläche und übernehmen Sie dann die Klassen “Liste” und “Element” aus dem BlueJProjekt folgendermaßen: 1. Über das Menü “File >> New File >> Java >> Java Class” wird eine neue leere Klasse erzeugt. Sie erhält den Namen “Liste” bzw. “Element”. 2. Der Quelltext wird in BlueJ angezeigt, markiert und mit copy/paste in die neue NetBeans-KLasse übertragen. 3. BlueJ kann wieder geschlossenw erden. 4. Überlegen Sie sich, wie eine graphische Oberfläche aussehen sollte, über die man neue Elemente erzeugen kann. Gestalten Sie diese Oberfläche. 5. Es ist sinnvoll, eine neue Liste zu erzeugen, sobald das Programm gestartet wird. Fügen Sie die erforderlichen Anweisungen in den Konstruktor der Oberfläche ein. 6. Auf Ihrer Oberfläche muss es Komponenten für die Eingabe der Inhalte eines Elementes geben (z.B. Textfelder. Außerdem muss es mindestens einen Button geben, der beim Anklicken ein neues Element aus den Inhalten erstellt, die in die Komponenten eingegebenen wurden und dieses der Liste hinzufügt. Erzeugen Sie die Methode (über Events! Action ! Action Performed) und schreiben Sie die nötigen Befehle. 7. Testen Sie Ihr Programm. 8. Der aktuelle Inhalt der Liste soll auf der Oberfläche ausgegeben werden. Dazu eignet sich eine Text Area. Gestalten Sie die Oberfläche und erstellen Sie die Methode. Hinweise: Für die primitiven Datentypen gibt es Wrapper-Klassen. Die Wrapper-Klassen (außer Character) enthalten Funktionen, um einen String in den jeweiligen primitiven Typ umzuwandeln (z.B. int - Integer.parseInt(aString) ). byte - Byte short - Short int - Integer long - Long char - Character float - Float double - Double boolean – Boolean Zur Formatierung von Zahlen kann auch die Klasse NumberFormat genutzt werden. Sie stellt u.a. Funktionen für die Ausgabe von formatierten Zahlen, Währungsangaben und prozentuale Ausgaben zur Verfügung. Siehe auch http://download.oracle.com/javase/6/docs/api/java/text/NumberFormat.html http://sunpool.mttcs.org/javabuch/k100118.html#ixa101207