Applet funktioniert einzig und allein im Compiler

Status
Nicht offen für weitere Antworten.

777

Bekanntes Mitglied
In der integrierten Executefunktion meines Compilers funktioniert, das von mir geschriebene Spiel hier einwandtfrei. Sobald ich jedoch das Applet compiliere und hochlade komme ich genau so weit, wie hier:

http://jesusfreak777.je.funpic.de/Regen/Tropfen.html

Nur ein graues Etwas :-(
Mein Code ist das hier, falls das wem hilft.
Es wäre wirklich nett, wenn mir jemand sagen könnte, was mein Compiler falsch macht und warums auf dem Browser nicht läuft.

cya
David

PS: Es läuft nicht nur auf dem FTP nicht, sondern auch auf meinem PC nicht. Andere Applets gehn.

PPS: Der Code:


Code:
import java.awt.*;
import java.applet.*;
import symantec.itools.awt.DirectionButton;

public class Tropfen extends java.applet.Applet implements java.lang.Runnable   
{
    int zeitlich=0,schlaf=40,x=-20,y=-20,ho=20,br=10,eimerx=0,eimery=266,eimerh=70,wind=2,eimerb=50,geschw=1,wasserstand=0,waterstand=0; //VARIABLEN int
    int r=170,g=170,b=255,rwind=0;
    boolean linkss=true; //VARIABLEN boolean
    Thread wasser = null;  //Thread "wasser" wird zu Anfang auf "nichts" gesetzt.

	public void init()
	{
		add(wassser);
		wassser.setBackground(java.awt.Color.white);
		wassser.setBounds(0,0,1,1);
		setLayout(null);
		setBackground(new java.awt.Color(230,230,255));
		setSize(563,429);
		add(eimer);
		eimer.setBackground(java.awt.Color.cyan);
		eimer.setBounds(0,266,50,70);
		add(links);
		links.setBounds(24,384,15,15);
		try {
			unten.setDirection(symantec.itools.awt.DirectionButton.DOWN);
		}
		catch(java.beans.PropertyVetoException e) { }
		add(unten);
		unten.setBounds(48,408,15,15);
		try {
			rechts.setDirection(symantec.itools.awt.DirectionButton.RIGHT);
		}
		catch(java.beans.PropertyVetoException e) { }
		add(rechts);
		rechts.setBounds(72,384,15,15);
		try {
			oben.setDirection(symantec.itools.awt.DirectionButton.UP);
		}
		catch(java.beans.PropertyVetoException e) { }
		add(oben);
		oben.setBounds(48,360,15,15);
		stopp.setLabel("Start");
		add(stopp);
		stopp.setBackground(java.awt.Color.green);
		stopp.setFont(new Font("Dialog", Font.BOLD, 12));
		stopp.setBounds(480,396,77,28);
		add(bottom);
		bottom.setBackground(java.awt.Color.black);
		bottom.setBounds(0,336,564,3);
		ausgabe.setText("0");
		add(ausgabe);
		ausgabe.setBounds(324,384,144,24);
		waters.setText("Wasserstand:");
		add(waters);
		waters.setBounds(240,384,84,24);
		MS.setText("ms");
		add(MS);
		MS.setBounds(180,384,24,24);
		add(millisek);
		millisek.setBounds(132,384,46,24);

		SymMouse aSymMouse = new SymMouse();
		stopp.addMouseListener(aSymMouse);
		links.addMouseListener(aSymMouse);
		rechts.addMouseListener(aSymMouse);
		oben.addMouseListener(aSymMouse);
		unten.addMouseListener(aSymMouse);

		rechts.disable();
		links.disable();
		oben.disable();
		unten.disable();
		
	}
	
 
	java.awt.Button wassser = new java.awt.Button();
	java.awt.Label eimer = new java.awt.Label();
	symantec.itools.awt.DirectionButton links = new symantec.itools.awt.DirectionButton();
	symantec.itools.awt.DirectionButton unten = new symantec.itools.awt.DirectionButton();
	symantec.itools.awt.DirectionButton rechts = new symantec.itools.awt.DirectionButton();
	symantec.itools.awt.DirectionButton oben = new symantec.itools.awt.DirectionButton();
	java.awt.Button stopp = new java.awt.Button();
	java.awt.Canvas bottom = new java.awt.Canvas();
	java.awt.Label ausgabe = new java.awt.Label();
	java.awt.Label waters = new java.awt.Label();
	java.awt.Label MS = new java.awt.Label();
	java.awt.Label millisek = new java.awt.Label();


	
	public void start()
	{
	 wasser = new Thread(this);//Thread "wasser" wird im Arbeitsspeicherbereich DIESES Applets erstellt.
	}
	
	public void run()
	{
       x=(int)(Math.random()*563+1);
	   wind = (int)(Math.random()*5+1);                     //Zufallszahlen
       rwind=(int)(Math.random()*12+1);    

	   while(true)
	   {
	        eimer.setBounds(eimerx,eimery,eimerb,eimerh);   //Veränderung der Position des Eimers mit 4 Positions und Koordinatenvariablen	   

	        try        
	        {
	            wasser.sleep(schlaf);                       //Verzögerung variirt durch die Variable schlaf.
	        }
	        catch(InterruptedException e)                   //Fehler abfangen
	        {}
	        zeitlich=zeitlich+schlaf; 
        	millisek.setText(""+zeitlich);
        	
	        if(linkss==true)                            //Wurde als letztes Button "rechts" gedrückt 
	        {                                           //so wird nun die Variable geschw um eins erhöht 
	        
	           if(eimerx<=513)
    	       eimerx = eimerx + geschw;                   //und der Eimer bewegt sich nach rechts.
	        }
    	        
	        if(linkss==false)                           //Genau umgekehrt hier.
	        {
	            if(eimerx>=0)
    	        eimerx = eimerx - geschw;  
    	        
	        }
	            	        	        	        
           if(y>=247 && y<=250 && (x>=eimerx && x<=eimerx+50))
            {
             x=(int)(Math.random()*563+1);
             rwind=(int)(Math.random()*12+1);
             wind = (int)(Math.random()*5+1);          //Zufallszahlen
             y=0;
             wasserstand++;
             	wassser.setBackground(new java.awt.Color(r,g,b));
	            r=r-10;
	            g=g-10;
	            
                if(wasserstand>=17)
                {
                 ausgabe.setText("Der Eimer ist voll!"); 
                 wasser.stop();
                }
                else
                ausgabe.setText(""+wasserstand);
            }    
            else 
            {
                if(y>=316)
                {
                y=0;   
                x=(int)(Math.random()*563+1);
                wind = (int)(Math.random()*5+1);          //Zufallszahlen
                rwind=(int)(Math.random()*12+1);
                repaint();                                //Aufrufen der Paintmethode
                }  
                else
                {
	            y=y+wind;                                 //y Pos vom Tropfen wird erhöht. 
	           
	                switch(rwind)
	                {
	                case 1:
	                    if(x>=0)
	                    {
	                    x--;
	                    }
	                    else
	                    rwind=2;
	                break;
        	        
	                case 2:
	                    if(x<=553)
	                    {
	                    x++;
	                    }
	                    else
	                    rwind=1;
	                break;
	                
	                case 3:
	                	if(x>=2)
	                    {
	                    x=x-2;
	                    }
	                    else
	                    rwind=4;
	                break;
	                
	                case 4:
	                	if(x<=552)
	                    {
	                    x=x+2;
	                    }
	                    else
	                    rwind=3;
	                break;
	                
	  
	                
    	            }
    	        
	            repaint();
                }
            }
	   }     
	} 
	
	public void paint(Graphics g)
	{
	 g.setColor(Color.blue);   
	 g.fillOval(x,y,br,ho);
        switch(wasserstand) //Je nachdem, wie der Wasserstand ist, wird auch das RECT gezeichnet.
        {
        case 0:   
        wassser.setBounds(eimerx+2,eimery,46,0);
        break;  
       
        case 1:   
        wassser.setBounds(eimerx+2,66+eimery,46,4);
        break;  
         
        case 2:   
        wassser.setBounds(eimerx+2,62+eimery,46,8);
        break;  
         
        case 3:   
        wassser.setBounds(eimerx+2,58+eimery,46,12);
        break;  
         
        case 4:   
        wassser.setBounds(eimerx+2,54+eimery,46,16);
        break;  
         
        case 5:   
        wassser.setBounds(eimerx+2,50+eimery,46,20);
        break;  
         
        case 6:   
        wassser.setBounds(eimerx+2,46+eimery,46,24);
        break;  
         
        case 7:   
        wassser.setBounds(eimerx+2,42+eimery,46,28);
        break;  
         
        case 8:   
        wassser.setBounds(eimerx+2,38+eimery,46,32);
        break;  
         
        case 9:   
        wassser.setBounds(eimerx+2,34+eimery,46,36);
        break;  
         
        case 10:   
        wassser.setBounds(eimerx+2,30+eimery,46,40);
        break;  
         
        case 11:   
        wassser.setBounds(eimerx+2,26+eimery,46,44);
        break; 
         
        case 12:   
        wassser.setBounds(eimerx+2,22+eimery,46,48);
        break;  
         
        case 13:   
        wassser.setBounds(eimerx+2,18+eimery,46,52);
        break;  
         
        case 14:   
        wassser.setBounds(eimerx+2,14+eimery,46,56);
        break;  
         
        case 15:   
        wassser.setBounds(eimerx+2,10+eimery,46,60);
        break; 
         
        case 16:   
        wassser.setBounds(eimerx+2,6+eimery,46,64);
        break; 
        
        case 17:   
        wassser.setBounds(eimerx+2,2,46+eimery,68);
        break; 
        }
    }
	
	
	public void stop()
	{
	 wasser.stop();
	 Thread wasser = null;
	}    

	class SymMouse extends java.awt.event.MouseAdapter
	{
		public void mousePressed(java.awt.event.MouseEvent event)
		{
			Object object = event.getSource();
			if (object == stopp)
				stopp_MousePressed(event);
			else if (object == links)
				links_mousePressed(event);
			else if (object == rechts)
				rechts_mousePressed(event);
			else if (object == oben)
				oben_mousePressed(event);
			else if (object == unten)
				unten_mousePressed(event);
		}
	}

	void stopp_MousePressed(java.awt.event.MouseEvent event)
	{
	    wasser.start();           //Thread "wasser" wird gestartet
	    stopp.disable();
	    
	    rechts.enable();
		links.enable();
		oben.enable();
		unten.enable();
	}

	void links_mousePressed(java.awt.event.MouseEvent event)
	{
	 linkss=false;   //Schlater "links" ist nun gedrückt.
	}

	void rechts_mousePressed(java.awt.event.MouseEvent event)
	{
	 linkss=true;    //Schlater "rechts" ist nun gedrückt.
    }

	void oben_mousePressed(java.awt.event.MouseEvent event)
	{
	geschw++;        //Geschwindigkeitserhöhung
	}

	void unten_mousePressed(java.awt.event.MouseEvent event)
	{
	if(geschw>=2)    //Geschwindigkeitserhöhung aber nur dann, wenn die Geschwindigkeit noch größer als 2 oder 2 ist.
	geschw--;
	}
}
 

Leroy42

Top Contributor
Deinen Quelltext hättest du dir schenken können :cool:

Opera sagt nach Aufruf deines URLs

java.lang.ClassFormatError: Incompatible magic value 1008813135 in class file symantec/itools/awt/ButtonBase

Im Quelltext sehe ich, daß du kein Jar-File benutzt:

<APPLET CODE="Tropfen.class" WIDTH="563" HEIGHT="429"></APPLET>

Woher bitte soll jeder Browser der Welt, dein symantec/itools/awt-Package kennen? :shock:

Also jar-File mit dem package erstellen oder gleich auf Sonderkram-packages verzichten
 

Leroy42

Top Contributor
- In das Verzeichnis gehen wo sich deine Datei Tropfen.class befindet
- Falls noch nicht vorhanden, das gesamte Package symantec.itools.awt dort hineinkopieren
oder auch andere packages, auf die von dir benutzte Klassen aus symantec.itools.awt intern
Bezug nehmen
- jar cvf Tropfen.jar *.class symantec.itools.awt

Keine Gewähr für jar-Aufruf (nicht getestet; nur aus'm Kopf raus)
 

777

Bekanntes Mitglied
diese Tropfen.jar konnte ich in meinem Compiler erstellen- die ist jetzt in dem Verzeichnis drin.
Dieses package- in welchem format ist das?
Ich selbst hab nur nen Ordner, der so heißt und da sind millionen und abermillionen Dateien drin.
Muss jetzt der gesammte Ordner in den Ordner es Applets?
 

Leroy42

Top Contributor
777 hat gesagt.:
Ich selbst hab nur nen Ordner, der so heißt und da sind millionen und abermillionen Dateien drin.
Muss jetzt der gesammte Ordner in den Ordner es Applets?

<zynismus>Nein, natürlich nicht. Du brauchst nur die Dateien die benötigt werden</zynismus>

Aber welche werden benötigt :shock: :shock:

Mal ne andere Frage: Was ist denn so tolles an diesen symantec-awt-Buttons, daß
es unbedingt die sein müssen? Nimm doch einfache awt-Buttons und dein Applet läuft überall,
ohne daß fette packages von jedem Browser heruntergeladen werden müssen.
 

777

Bekanntes Mitglied
Ich find die Buttons eben toll, weil man da so doll nach oben und vol fett nach unten cruisen kann :)
Naja... aber ich seh mich eh jetzt dazu gezwungen die grad umzuändern... hätte mich aber trotzdem mal interessiert, wie ich auch fremde Komponenten einbauen und benutzen kann... :)
 

Leroy42

Top Contributor
Ich weiß zwar nicht welche IDE du benutzt, aber es gibt welche die dir die Arbeit abnehmen,
selbst rauszusuchen, welche Klassen du alles benötigst.
 

Leroy42

Top Contributor
Das Spiel ist gar nicht mal so schlecht, vor allem, daß man vorausschauend ein Gefühl
für Geschwindigkeiten und Entfernungen entwickeln muß.

Aber warum kann ich die Regentonne nicht einfach stoppen? Ist 'n bischen blöd immer
nach links und rechts zu tänzeln, wenn ich die Tonne bereits unter dem Tropfen habe :(
 

The_S

Top Contributor
Wenn wir gerade schon bei Kritik sind, wie wäre es mit einer Tastatur-Steuerung? Würde das ganze steuertechnisch extrem Verbessern. Dass die Tonne tanzt find ich eigentlich gut. Jetzt fehlen dann noch ein paar hübsche Gifs und ne Tonne mit Rädern um das ganze grafisch ein wenig aufzubohren :) :toll:

[edit] Außerdem kann man die Tonne bei zu hoher Geschwindigkeit über die Hälfte in einer Wand "versenken".
 

Leroy42

Top Contributor
Hobbit_Im_Blutrausch hat gesagt.:
Außerdem kann man die Tonne bei zu hoher Geschwindigkeit über die Hälfte in einer Wand "versenken".

Am Tunneln der Tonne muß der Heiland also noch ein wenig basteln.

Edit: Heiland ==> 777
War im falschen Thread :oops:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Applet funktioniert online - nur nicht lokal..? Allgemeine Java-Themen 2
A applet audio funktioniert nur sporadisch Allgemeine Java-Themen 4
P Java-Applet funktioniert nicht in HTML-Seite Allgemeine Java-Themen 3
J Java-Applet funktioniert nur als Administrator Allgemeine Java-Themen 6
L applet funktioniert nicht Allgemeine Java-Themen 2
J Java Applet Verknüpfungsproblem Allgemeine Java-Themen 6
L Applet Applet zu JavaWebStart migrieren - simples sample geht nicht Allgemeine Java-Themen 2
A Applet Applet debuggen und Logs finden Allgemeine Java-Themen 3
A Plot funktion applet Allgemeine Java-Themen 4
A Applet nullstelle Plot Allgemeine Java-Themen 1
A Applet in HTML einbinden Allgemeine Java-Themen 1
B Altes Applet anpassen Allgemeine Java-Themen 8
W Unterschied Standalone und Applet Allgemeine Java-Themen 1
L WebSign Applet der Deutschen Bank Allgemeine Java-Themen 0
K Applet in JApplet umwandeln Allgemeine Java-Themen 5
V Applet trotz Ausnahme blockiert Allgemeine Java-Themen 0
T Java Applet Berechtigungen Allgemeine Java-Themen 2
T 2D-Grafik Java Applet Rechtecke und Kreise Allgemeine Java-Themen 1
I Java Applet wird immer blockiert Allgemeine Java-Themen 3
S Applet in html laden; InvocationTargetException,.. nur warum ? Allgemeine Java-Themen 0
S Java Applet wird dauerhaft blockiert Allgemeine Java-Themen 1
T Java applet args Allgemeine Java-Themen 5
S Java Applet Crash - Keine Exception Allgemeine Java-Themen 8
L Java Applet - ClassNotFound online, offline korrekt Allgemeine Java-Themen 13
Y Applet/Html - Wie Java-Methode aufrufen, die einen Parameter erwartet? Allgemeine Java-Themen 3
H Problem mit Applet (online / offline) Allgemeine Java-Themen 8
K Applet-Einbindung Allgemeine Java-Themen 11
T Java Applet in IE 8+9 Allgemeine Java-Themen 4
P Applet-Zugriffsrechte: merkwürdiges Verhalten Allgemeine Java-Themen 4
X Applet läuft nicht, Applet in Webseite einbinden Allgemeine Java-Themen 4
P Applet java 1.7 in Website einbinden ? Allgemeine Java-Themen 7
P Applet Applet einbinden Probleme Allgemeine Java-Themen 2
S URL File in Applet Allgemeine Java-Themen 16
S Fehler Applet-HTML Allgemeine Java-Themen 5
C Applet per Greasemonkey aufrufen Allgemeine Java-Themen 9
U Wie kann mit einen Java Applet Dateien erstellen,verschieben und löschen? Allgemeine Java-Themen 9
D JAVA Applet MVC? Allgemeine Java-Themen 2
E Application -> Applet Allgemeine Java-Themen 9
A Applet Mein Applet verursacht Browserabsturz Allgemeine Java-Themen 8
J Erste Schritte Applet allgemeine Funkion Allgemeine Java-Themen 8
T Java Application zu Applet Allgemeine Java-Themen 4
G Input/Output java applet schreibrechte Allgemeine Java-Themen 8
A Input/Output Applet-Zugriff auf PHP-Schnittstelle (externer Server) Allgemeine Java-Themen 22
G java applet und com-port Allgemeine Java-Themen 7
A Applet Jar Datei auslesen Allgemeine Java-Themen 3
M Applet aus Eclipse Allgemeine Java-Themen 12
M Applet Oberfläche aktualisieren Allgemeine Java-Themen 5
S Applet maximiert starten Allgemeine Java-Themen 5
A Email-Programm aus Applet öffnen Allgemeine Java-Themen 4
M AccessControlException bei Signiertem Applet Allgemeine Java-Themen 12
J Applet Ausgabe beim Speichern ausblenden Allgemeine Java-Themen 4
schlingel Webstart/Applet Problem - Classloader-Bug Allgemeine Java-Themen 7
W Java Applet läuft langsam Allgemeine Java-Themen 2
J Applet zum .java-Dateien auslesen/erstellen Allgemeine Java-Themen 5
S Timer in Applet? Allgemeine Java-Themen 11
S Applet Einbindung - Firefox kp, IE no way Allgemeine Java-Themen 8
N Gallery Remote Applet Allgemeine Java-Themen 2
F Link in Applet "verstecken" Allgemeine Java-Themen 3
F mit Applet auf .htaccess geschützte Dateien zugreifen Allgemeine Java-Themen 3
S Applet in Java NetBeans Allgemeine Java-Themen 3
E Applet neustarten Allgemeine Java-Themen 2
F Eclipse JAVAMAIL läuft nur unter Eclipste Applet Viewer Allgemeine Java-Themen 4
I RMI Signiertes Applet ohne Warnung? Allgemeine Java-Themen 14
S Mediaplayer-Applet Allgemeine Java-Themen 2
D Code wird im Applet nicht ausgeführt. Allgemeine Java-Themen 2
H Applet java.lang.reflect.InvocationTargetException Allgemeine Java-Themen 9
N Protocol Frame/Applet Allgemeine Java-Themen 4
J Aus Applikation ein Applet machen Allgemeine Java-Themen 5
S Directory im Applet auslesen Allgemeine Java-Themen 3
A Textdatei im Applet einlesen Allgemeine Java-Themen 2
N Java Applet im eingeschränkten Benutzeraccount Allgemeine Java-Themen 10
L Applet immer wieder neu laden - Problem Allgemeine Java-Themen 25
L Problem beim animieren von Bildern in Applet Allgemeine Java-Themen 23
L Problem mit Hintergrund bei JAVA Applet Allgemeine Java-Themen 27
T applet und JFrame Allgemeine Java-Themen 12
L Applet Verzeichnis lesen Allgemeine Java-Themen 3
J Ordnerstrukturen mit Applet Allgemeine Java-Themen 14
H importierte Bibliotheken in Applet? Allgemeine Java-Themen 4
lumo Applet exception Allgemeine Java-Themen 6
Developer_X Java Applet - Font aus datei laden Allgemeine Java-Themen 15
W Applet notinited nach Java Versionsupdate Allgemeine Java-Themen 12
M Erkennung von Daten in einem Applet Allgemeine Java-Themen 2
M wieder mal applet probleme Allgemeine Java-Themen 17
0 Sandbox und Applet Kommunikation Allgemeine Java-Themen 9
L Applet Problem - stockende und springende Bilderabfolge Allgemeine Java-Themen 12
ChackZz Applikation zu Applet umbauen Allgemeine Java-Themen 13
V Fehler bei Applet Allgemeine Java-Themen 11
G Frage zu Serverapplikation+Applet Allgemeine Java-Themen 2
MQue aus einem Applet auf Word zugreifen Allgemeine Java-Themen 3
B Java Applet unter Mac wird nicht angezeigt Allgemeine Java-Themen 6
N Applet Probleme Allgemeine Java-Themen 2
G Java Applet für VPN Allgemeine Java-Themen 2
C Applet: JFileChooser: PFad an HTML zürückgeben Allgemeine Java-Themen 4
B Zugriff mit einem Applet auf den Datenträger Allgemeine Java-Themen 11
S Applet Programmierung in Eclipse Allgemeine Java-Themen 12
M Applet in maximaler Bildschirmgroesse oeffnen? Allgemeine Java-Themen 7
J Applet in JAR packen - was muss in main() stehen? Allgemeine Java-Themen 12
P Applet Funktionalität überwachen Allgemeine Java-Themen 3
hdi Applet, JavaScript, PHP, mySQL -> Was brauch ich? Allgemeine Java-Themen 3
C Externe Bilder in Java-Applet blocken? Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben