Java_Fehlermeldung wird nicht angezeigt

Dieses Thema im Forum "Programmieren" wurde erstellt von rak, 2. Juli 2003.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. rak

    rak Byte

    Registriert seit:
    14. Oktober 2000
    Beiträge:
    38
    /* Hallo Java-Freunde!

    Ich habe folgende Frage:
    im Quelltext, wo kommentiert steht: "erscheint nicht", erscheint die Fehlermeldung NICHT, wenn im HTML-Code der HTML-Datei die Farbe mit falschen „HEX“-Schlüssel angegeben wird. Fragt sich, wozu dann im Catch() das entsprechende Argument? Was ist wo falsch? Coding ist aus "Java un 21 Tagen", etwas abgewandelt.

    Bitte den Text kopieren und in jeweilige Java und html Files trennen und kompilieren/testen. Vielen Dank

    Danke im voraus

    rak
    ****************************** /

    /* NewWatch.java */

    import java.util.*;
    import java.awt.*;

    public class NewWatch extends javax.swing.JApplet
    {
    private String lastTime = ""; //zum Delete der akt. Zeitangabe
    private Font UhrFont = new Font("Serif", Font.BOLD, 20); //Schrift f. d. Uhranzeige
    Color watchTextColor;
    Color col;

    public void init()
    {
    String txt = getParameter("watchfont"); //gets Color from html-file
    watchTextColor = Color.white; //new Color(255,255,255);
    if(txt != null)
    {
    try
    {
    watchTextColor = Color.decode(txt); } catch(NumberFormatException nf)
    {
    showStatus("Wrong HEX-Number"+ txt); // erscheint nicht
    } //falls hex f. Color falsch
    }

    String in = getParameter("background");
    col = Color.black;
    if(in != null)
    {
    try
    {
    col = Color.decode(in);
    }catch(NumberFormatException nfe)
    {
    showStatus("Bad Parameter " + in); //erscheint nicht
    }
    }
    setBackground(col);
    }
    public void paint(Graphics screen)
    {
    Graphics2D screen2D = (Graphics2D)screen; //screen to 2Dscreen
    Font type = new Font("serif", Font.BOLD, 15);
    screen2D.setFont(type);

    GregorianCalendar day = new GregorianCalendar();
    String time = day.getTime().toString(); //aus Day get Time in String Format

    screen2D.setColor(col);
    screen2D.drawString(lastTime,5,25);
    screen2D.setColor(watchTextColor);
    screen2D.drawString(time,5,25);

    try
    {
    Thread.sleep(1000);
    }
    catch(InterruptedException ie) {}

    lastTime = time;
    repaint();
    }

    }

    /********************
    <HTML>
    <HEAD><TITLE>Zeit und Datum</TITLE></HEAD>

    <BODY>

    <p><b>Aktuelles Datum und Zeit</b>:

    <applet code = "NewWatch.class"
    width = 400
    height = 200
    >
    <param name = "background" value = "#701120">
    <param name = "watchfont" value = "#FFAAZZ">

    </applet>
    </BODY>
    </HTML>
    */
     
  2. rak

    rak Byte

    Registriert seit:
    14. Oktober 2000
    Beiträge:
    38
    Danke sehr HaKi !

    Ich glaube, ich bin solchen Profi-Foren noch nicht gewachsen. Ich will dieses Forum nicht klein machen, aber es ist ein deutsches und für Teilnehmer von Amateur bis Profi.
    sun.COM-Forum aber ist evtl. für die ganze_Welt_Profis.
    Aber ich werde sehen.

    Alles Gute !

    rak
     
  3. HaKi

    HaKi Byte

    Registriert seit:
    15. Januar 2001
    Beiträge:
    119
    Hätte da noch was für Dich ;-)

    java.sun.com

    Da ist ein spezielle Java-Forum.

    HaKi
     
  4. rak

    rak Byte

    Registriert seit:
    14. Oktober 2000
    Beiträge:
    38
    HaKi,
    danke Dir für die Mühe. Ich werde das auch ausprobieren (mit zusätz. Sys-Ausgabe).
    So sind die Lehrbücher.

    Alles Gute

    rak
     
  5. HaKi

    HaKi Byte

    Registriert seit:
    15. Januar 2001
    Beiträge:
    119
    Hallo!

    Ich habe Deinen Code ausprobiert und Du hast recht, es wird nichts ausgegeben, aber in den catch-Block wird sehr wohl gegangen. Ich weiß nicht genau was showStatus machen soll, aber wenn Du dort mit System.out.println("..."); etwas ausgibst, wird es angezeigt. (in der Java-Console)

    Ich hoffe es hilft.

    HaKi
     
  6. rak

    rak Byte

    Registriert seit:
    14. Oktober 2000
    Beiträge:
    38
    Hello HaKi !

    Danke für die Antwort! Nur möchte ich folgendes erwähnen:
    1. Ich habe ja im HTML-Dokument die Hex-Zahl falsch angegeben. Anstelle z.B. "#FFAABB" habe ich "#FFAAZZ" geschrieben.
    2. Deswegen müßte die Exception NumberFormat doch greifen?

    Ich bin ein Anfänger und habe das Programm nicht erfunden. Ich änderte nur leicht ein Buch-Beispiel. Ich verlasse mich auf die Autoren der Java_In_21_Tagen.

    Gruß

    rak
     
  7. HaKi

    HaKi Byte

    Registriert seit:
    15. Januar 2001
    Beiträge:
    119
    Hi!

    Naja hängt davon ab was Du geändert hast, aber wenn ein catch nicht wirklich ausgeführt wird, dann fängst Du die falsche Exception ab.

    HaKi
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen