2013-01-15 19 views
5

Qualcuno sa perché l'applet Java non visualizza nulla?L'applet Java non visualizza nulla

Questa è la mia prima applet Java quindi sono nuovo a crearne una. Ho studiato questo problema e non ho trovato una risposta specifica al problema corrente.

import java.applet.Applet; 
import java.awt.Graphics; 
import java.awt.Font; 
import java.awt.Color; 

public class JavaRocksApplet extends Applet 
{ 
public void paint(Graphics screen) 
{ 
    Font f = new Font("TimesRoman", Font.ITALIC, 36); 
    screen.setFont(f); 
    Color c = new Color(40, 80, 120); 
    screen.setColor(c); 
    screen.drawString("Java Rocks!!", 100, 60); 
} 
} 

Non importa se utilizzo appletviewer nel modulo di comando o in una pagina html.

<html> 
<head> 
<title>JavaRocksApplet</title> 
</head> 
<body> 
    <applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet> 
</body> 
</html> 

non ci sono errori durante la compilazione del programma Java, quindi sono un po 'confuso sul perché non funziona.

Inoltre, sto usando un Pro con OSX 10.8.2 Mountain Lion MacBook con Java SE 6

+0

Eventuali errori visualizzati? – Reimeus

+0

A seconda del browser, potrebbe essere difficile .. vedere questo - http://stackoverflow.com/a/4272861/763029 – Coffee

+0

Nessun errore e JavaRocksApplet.java viene compilato correttamente. Quando vengono utilizzati il ​​comando appletviewer o la pagina HTML, nulla visualizza – user1933229

risposta

1

In genere, è possibile definire un metodo init() e aggiungere inizializzare alcuni componenti GUI all'interno di esso. Non escluderei paint(). Non sono sicuro di cosa esattamente farebbe.

2

Sia l'applet che la pagina HTML appaiono corretti, quindi è probabile che il problema sia causato da un'errata configurazione sul lato server o dallo stato del plugin Java per il browser. Avrei bisogno di sapere di più sulla tua situazione per diagnosticarla completamente. [Ho provato questo in Google Chrome usando il plugin 1.7.0.11, e ha funzionato come previsto]

Sul lato server, assicurati di avere il file di classe e il file HTML distribuiti nella stessa posizione sul server (o una directory locale se la si sta caricando in quel modo)

Inoltre, è possibile che il browser che si sta utilizzando non disponga di Java installato o di una versione incompatibile di Java. Questa è la prossima cosa che controllerei. I problemi più comuni includono la compilazione dell'applet con l'API 1.7, ma il tentativo di caricarlo in un browser con un vecchio plugin Java.

0

mettere questo nel codice prima di ogni riga del paint

super.paint(screen); 
2

Ecco uno screenshot di questo codice di lavoro. Tranne accorciamento dall'altezza dell'applet specificata.

JavaRocksApplet

Così, come Neet ha osservato in un commento. "Funziona qui."

import java.applet.Applet; 
import java.awt.Graphics; 
import java.awt.Font; 
import java.awt.Color; 

/* 
<applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet> 
*/ 
public class JavaRocksApplet extends Applet 
{ 
    public void paint(Graphics screen) 
    { 
     Font f = new Font("TimesRoman", Font.ITALIC, 36); 
     screen.setFont(f); 
     Color c = new Color(40, 80, 120); 
     screen.setColor(c); 
     screen.drawString("Java Rocks!!", 100, 60); 
    } 
} 

Probabilmente maggiori dettagli sulla causa effettiva del problema possono essere trovati visualizzando la console. Vedi How do I enable and view the Java Console?

0

Ho avuto lo stesso problema con la mia applet. Aggiunto commento

<applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet> 

in JavaRocksApplet ha funzionato per me.