Ab jetzt: Java ohne Kara



Ähnliche Dokumente
JavaKara -> Java. 1. Programm schreiben

Applications Applets (eingeschränkte Rechte)

Praktikum: Einstieg: Arbeitsplatz, JCreator

Informatik 1 Tutorial

GEONET Anleitung für Web-Autoren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Java: Vererbung. Teil 3: super()

Informatik I Tutorial

Computeria Rorschach Mit Excel Diagramme erstellen

Bauteilattribute als Sachdaten anzeigen

Animationen erstellen

Arbeiten mit UMLed und Delphi

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Satzhilfen Publisher Seite Einrichten

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

Visual Basic Express Debugging

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Der Kalender im ipad

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Ein Bild in den Text einfügen

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Installation und Inbetriebnahme von Microsoft Visual C Express

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

Erstellen von x-y-diagrammen in OpenOffice.calc

Wie halte ich Ordnung auf meiner Festplatte?

Jederzeit Ordnung halten

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Anwendungsbeispiele Buchhaltung

Wichtige Information zur Verwendung von CS-TING Version 9 für Microsoft Word 2000 (und höher)

Mehrere PDF-Dokumente zu einem zusammenfügen

Applets I. Grundlagen der g Applet-Programmierung

Diese Anleitung wurde erstellt von Niclas Lüchau und Daniel Scherer. Erste Anmeldung. Schritt 1: Anmeldung..2. Schritt 2: Passwort setzen 3

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Mediator 9 - Lernprogramm

Bilder zum Upload verkleinern

Festplatte defragmentieren Internetspuren und temporäre Dateien löschen

Einführung in Powerpoint M. Hasler Wie erstelle ich eine Präsentation mit Powerpoint? - Eine Kurzanleitung

iphone-kontakte zu Exchange übertragen

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

3. auf Symbol klicken erstellt von Erika Völkel

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Erstellen eines Screenshot

Tipps und Tricks zu den Updates

Artikel Schnittstelle über CSV

WORKSHOP für das Programm XnView

Toolkit Team-Seite TIPPS & TRICKS FÜR DIE GESTALTUNG EURER TEAM-SEITE. Anmelden Daten ändern... 2 Eure Team-Seite... 3

Grundlagen der Programmierung APPLETS

6.2 Scan-Konvertierung (Scan Conversion)

Favoriten sichern. Sichern der eigenen Favoriten aus dem Webbrowser. zur Verfügung gestellt durch: ZID Dezentrale Systeme.

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

SICHERN DER FAVORITEN

Software-Engineering Grundlagen des Software-Engineering

FTP-Server einrichten mit automatischem Datenupload für

CAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung

Das DAAD-PORTAL. Prozess der Antragstellung in dem SAPbasierten Bewerbungsportal des DAAD.

Starten Sie Eclipse: Hier tragen sie Ihr Arbeitsverzeichnis ein. Zu Hause z.b. c:\workspace.

Inhaltsverzeichnis. 1. Empfängerübersicht / Empfänger hinzufügen 2. Erstellen eines neuen Newsletters / Mailings 3. Versand eines Newsletters

Um in das Administrationsmenü zu gelangen ruft Ihr Eure Seite auf mit dem Zusatz?mod=admin :

Datei Erweiterungen Anzeigen!

Windows 7: Neue Funktionen im praktischen Einsatz - Die neue Taskleiste nutzen

Wie erreiche ich was?

Pfötchenhoffung e.v. Tier Manager

CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung

Gezielt über Folien hinweg springen

Erstellen einer GoTalk-Auflage

Vorbereitung einer Grafik zum Druck einer Glotze aus, Stadion an! -Zaunfahne Torsten Bunde, Stand 5. Juli 2014

TeamSpeak3 Einrichten

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Leichte-Sprache-Bilder

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Flugzeugen einen Glanz aufmalen

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen

Handbuch für Easy Mail in Leicht Lesen

Version 0.3. Installation von MinGW und Eclipse CDT

Fotos verkleinern mit Paint

Jeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

Ein PDF erstellen. aus Adobe InDesign CC. Langner Marketing Unternehmensplanung Metzgerstraße Reutlingen

Anwendungsbeispiele Buchhaltung

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

Anleitung: Wie unterschreibe ich die Petition im Internet?

Erstellen einer digitalen Signatur für Adobe-Formulare

MAPS.ME. Benutzerhandbuch!

219 Millionen. für das Familienzentrum Goldach

Wie Sie mit Mastern arbeiten

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Dokumentation für das Spiel Pong

Datenbanken Kapitel 2

Task: Nmap Skripte ausführen

HEINZ MARTIN PRINTSCREEN BETRIEBSANLEITUNG. Rev 2.11

Computeria Urdorf. Treff vom 28. März Tipps und Tricks

Tevalo Handbuch v 1.1 vom

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Transkript:

Java ohne Kara

Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen

JavaKara -> Java Ablauf in JavaKara: 1. Programm schreiben 2. Kompilieren 3. Programm starten Ablauf in Java gleich 1. Programm schreiben 2. Kompilieren 3. Programm starten

1. Programm schreiben Texteditor statt JavaKara-Editor

2. Kompilieren Befehl in MS-DOS-Eingabeaufforderung anstatt bequemer Knopf javac steht für java compiler

3. Programm starten Befehl in MS-DOS-Eingabeaufforderung anstatt bequemer Knopf

TextPad Wir verwenden hier TextPad (www.textpad.com) Vorteil 1: Farben erleichtern das Lesen der Programmzeilen Vorteil 2: Kompilieren und Start des Applets mit je einem Menu-Befehl

TextPad Wir brauchen nur wichtigste Funktionen des TextPad: Datei öffnen Datei speichern Rückgängig-Befehl Java kompilieren Java-Applet starten Siehe TextPad-Anleitung in den Unterlagen

Warum HelloWorld.html? 2 Arten Java Programme Java Applikationen Java Applets Kann/muss man in Webseiten einbauen Einfachere Programme als bei Applikationen Applets: Man benötigt Webseite (.html) und ein Betrachtungsprogramm

Wie sieht die.html-datei aus? Dateiname der kompilierten Java-Klasse Grösse des Programm- Fensters

TextPad-Problem Um Java-Applet aus dem TextPad zu starten, muss die.html-datei bereits existieren

Also nochmals... 1. Programm schreiben -> HelloWorld.java 2. Kompilieren -> HelloWorld.class (javac HelloWorld.java) 3. HTML-Datei (z.b. HelloWorld.html) erstellen und Programm starten (appletviewer HelloWorld.html)

Ein einfaches Java-Applet import java.awt.*; import java.applet.*; public class HelloWorld extends Applet { public void paint(graphics screen) { screen.drawstring("hello world", 10, 10); } }

Gähhhnnn... Jetzt seid Ihr aber dran!

Auftrag Jede schreibt das HelloWorld-Applet, speichert es, kompiliert es und lässt es laufen. Zeit: 20 Minuten Ihr findet alles was Ihr braucht in den Unterlagen

Los!

Quelle: Uli Stein

Wichtig bei Java-Programmen Goldene Regel Dateiname = Klassenname HelloWorld.java <-> (...) class HelloWorld (...) Kompilieren nicht vergessen! (Sonst startet man eine alte HelloWorld.class -Version)

Das Spezielle an Java Java stellt viele Funktionen zur Verfügung Durch diese Fertig-Bauelemente ist man schneller am Ziel Aber: Man muss sich an die Richtlinien halten

public void paint(...) Wird von Java aufgerufen, sobald ein Bildschirmbereich neu gezeichnet werden muss Von Java festgelegter Name Ideal, um Grafik-Sachen zu zeichnen.

Ablauf bei Java-Programmen In Java programmiert man Ereignisse Ereignis: Führe bei Mausklicks die Methode xy aus Nicht Ereignis-gesteuert: Viel komplizierter!

Ablauf bei Java-Programmen Einige vordefinierte Methoden: init, start, paint, stop, destroy Die restlichen Ereignisse muss man selber definieren: Z.B. Neuer Knopf erstellen Ereignis-Methode schreiben Methode zuordnen Wenn Mausklick auf diesen Knopf, dann führe Methode xy aus Hä? Brauchen wir vorläufig gar nicht!

Ablauf bei Java Von Java definierte Methoden Beim Start der Ausführung: void init() Immer, wenn es etwas zu zeichnen gibt: void paint(graphics g) Vor dem Programmende: void destroy() Und noch weitere wie void start(), void stop(), void update()

Was muss ich jetzt tun? Methode paint() eignet sich ideal für das Zeichnen von Punkten, Linien, etc. auf den Bildschirm. Java-Applet-Programm muss die Methode enthalten, dann wird sie automatisch aufgerufen.

Linie zeichnen import java.awt.*; import java.applet.*; public class ZeichneLinie extends Applet { public void paint(graphics screen) { screen.drawline(10,10,200,50); } } x y

Graphics import java.awt.*; import java.applet.*; public class ZeichneLinie extends Applet { public void paint(graphics screen) { screen.drawline(10,10,200,50); } }

Graphics An Programm: starte dein paint( )! Okay. Aber wo soll ich denn hinzeichnen? Java Programm

Graphics Hier kriegst du ein Blatt Papier vom Typ Graphics Danke. Ich nenne das Blatt "screen" Graphics Java Programm

Zusammengefasst Der Methode paint(...) wird ein Objekt vom Typ Graphics übergeben: public void paint (Graphics screen) { screen.drawline(10,10,200,50); } Dem Objekt geben wir einen Namen Objekte vom Typ Graphics stellen viele Methoden bereit, z.b. drawline( )

Graphics-Befehle Graphics screen; Text ausgeben: screen.drawstring("java ist cool", 10, 20); Linie zeichnen: screen.drawline(5, 10, 250, 40); Punkt zeichnen: screen.drawline(10, 70, 10, 70);

Jetzt kombinieren wir alles! Variablen, Schleifen, Methoden, Linien, Kreise, Punkte, Texte,... Grafik-Aufgaben im Anhang Zeit: 45 Minuten Danach 15 Minuten Pause

Hinweise zu Grafik Koordinaten beginnen bei (0,0) Fenster der Grösse 400x200 Punkt oben-links: (0,0) Punkt unten-rechts: (399,199) 0 1 2 0 1 2 3 4 Punkt (4,2)

Graphics-Blatt "weitergeben" Methode zeichnerechteck( ) soll man mit screen.drawline(x1, y1, x2, y2); eine Linie zeichnen können Wir geben das Blatt an die Methode weiter public void paint (Graphics blatt) { zeichnerechteck(10, 10, 200, 50, blatt); } void zeichnerechteck (..., Graphics screen) { screen.drawline(x1, y1, x2, y2); }

RechteckApplet.java void zeichnerechteck(int x, int y, int width, int height, Graphics screen) { (...) } screen.drawline(obenlinks_x, obenlinks_y, obenrechts_x, obenrechts_y ); screen.drawline(obenrechts_x, obenrechts_y, untenrechts_x, untenrechts_y); screen.drawline(untenrechts_x, untenrechts_y, untenlinks_x, untenlinks_y ); screen.drawline(untenlinks_x, untenlinks_y, obenlinks_x, obenlinks_y );

RechteckApplet.java int obenlinks_x = x; int obenlinks_y = y; int obenrechts_x = x+width-1; int obenrechts_y = y; int untenlinks_x = x; int untenlinks_y = y+height-1; int untenrechts_x = x+width-1; int untenrechts_y = y+height-1;

RechteckApplet.java public void paint(graphics g) { zeichnerechteck(100,50,200,100,g); g.drawline(100,50,299,149); g.drawline(299,50,100,149); }

Punktmuster Punktmuster im 10er-Raster Ideen? Erstelle mal die erste Zeile: 01234567890123456789012 for (int i=0; i<400; i++) { screen.drawline(i*10,0,i*10,0); } 10 Punkte

Punktmuster Und jetzt? Die restlichen Zeilen: Wiederhole erste Zeile x-mal for (int j=0; j<400; j++) { for (int i=0; i<400; i++) { screen.drawline(i*10, j*10, i*10, i*10, 0); j*10); } } 10 Punkte

Auf den ersten Blick verwirrend Innere Schleife wird "zuerst abgearbeitet" (einzelne Zeile) for (int j=0; j<400; j++) { for (int i=0; i<400; i++) { screen.drawline(i*10, j*10, i*10, j*10); } } Die Zeile muss bei jedem neuen j wiederholt gezeichnet werden

Schweizerkarte Schweizerkarte auf dem Bildschirm anzeigen Stadt Bern und Stadt Zürich einzeichnen

Wo einzeichnen? Koordinaten von Bern: y=200'000, x=600'000 ETH Zürich, Hönggerberg: y=251'326, x=679'885 y x

Wo ist Zürich? y 300 000 0 j x=679'885 i=? y=251'326 j=? 50 000 400 0 600 i 500 000 850 000 x

Für x bzw. i y 300 000 50 000 0 x=679'885 Linker Rand subtrahieren: x neu =179'885 Streckungsfaktor: scale= 600 350'000 Multiplizieren mit scale: x neu scale=308 400 0 600 500 000 0 350 000 850 000 x neu

Auf einen Blick y 300 000 0 x=679'885 i 1 i=(x-x 0 ) x =308 1 -x 0 50 000 400 0 i 1 =600 x 0 =500 000 x 1 =850 000 x

Für y bzw. j y y 1 =300 000 j 1 =400 0 j neu y=251'326 Idee: Drehe j-achse vorübergehend Jetzt wie bei x- bzw. i-achse j 1 j neu =(y-y 0 ) y =322 1 -y 0 j=400-j neu =78 y 0 =50 000 4000 0 600 500 000 850 000 x

Auf einen Blick y 300 000 j 0 x=679'885 i=(x-x 0 ) x =308 1 -x 0 y=251'326 i 1 j 1 ( ) j=j 0 - (y-y 0 ) y =78 1 -y 0 50 000 400 0 600 i 500 000 850 000 x

Wo ist nun Zürich? y 300 000 0 j (308, 78) x=679'885 i=berechnebildschirmi(x); y= 251'326 j=berechnebildschirmj(y); 50 000 400 0 600 i 500 000 850 000 x

Nun in Java... int berechnebildschirmi (double x) { double bildschirmi; bildschirmi = (x-xmin) * FENSTERMAX_I / (XMAX-XMIN); return (int) bildschirmi; } int berechnebildschirmj (double y) { double bildschirmj; double jverkehrt; jverkehrt = (y-ymin) * FENSTERMAX_J / (YMAX-YMIN); bildschirmj = FENSTERMAX_J ( jverkehrt ); return (int) bildschirmj; }

Bern i=berechnebildschirmi(600000); j=berechnebildschirmj(200000); 160 171

(Zusatzfolien)

Nicht dein Traum-Typ? Typen kann man in Java umwandeln! Gleitkommazahl in eine Ganzzahl umwandeln int i; double pi = 3.14159; i = (int) pi; Ganzzahl in Zeichenkette umwandeln int jahr = 2002; String text = "Wir haben das Jahr" + jahr;

Java-Gerüst import java.awt.*; import java.applet.*; public class ZeichneLinie extends Applet { public void paint(graphics screen) { /*... */ } } awt: Advanced Windowing Toolkit

Java-Gerüst import java.awt.*; import java.applet.*; public class ZeichneLinie extends Applet { public void paint(graphics screen) { /*... */ } } Erweitert Applet, d.h. ZeichneLinie gehört zu den Applets

Graphics Neben Graphics gibt es in Java auch noch eine Klasse Image. Graphics beinhaltet immer ein Image, aber auch noch weitere Objekte Graphics Image Aktuelle Font Aktuelle Farbe Hintergrund

Graphics Wir zeichnen die Linien in das Graphics- Objekt. Dort werden die Linien auf das Image- Objekt übertragen Graphics Image Aktuelle Font Aktuelle Farbe Hintergrund