Stelle eine konkrete Frage wo du nicht weiter kommst, dann kann man auch helfen. So kann man dir nur Raten ein bliebiges Tutorial zum Thema Applets zu lesen und durchzuarbeiten.
Und zwar, habe ich einen Java-Applet, sowie eine zugehörige hmtl-seite bekommen, das soll ich so verändern, das man per Mausklick die Vorder-und-Hintergrund-farbe ändern kann
mein Versuch, jedoch nicht Aufrufbar,
ich weiß auch nicht an welche Stelle ich was falsch gemacht habe,
Java-Editor zeigt nichts rot an
Java:
// HalloWeltApplet.java MM 2003importjava.applet.*;// Appletimportjava.awt.*;// Graphics/**
* Dieses Applet gibt den Schriftzug "Hallo Welt!" aus.
*/publicclassHalloWeltAppletextendsApplet{/**
* Hauptmethode, Darstellung des Applet.
*/publicvoidpaint(Graphics g){setForeground(Color.translucent);switch(wechsel){
g.setColor(Color.yellow);
g.drawString("Hallo Welt!",50,50);
g.setColor(Color.blue);}}/**
* Wechseln der Farben
* wird von Javascript aufgerufen.
*/publicvoid setWechsel (int nr){ wechsel = nr;repaint(100L);}}
HTML:
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><!-- Diese Seite bindet das HalloWelt - Applet ein. --><title>HalloWeltApplet</title></head><body><!-- Applet --><appletcode="HalloWeltApplet.class"height="100"width="170"></applet><hr><!-- Javascript --><aonclick="neueFarbe('blue');"href="javascript:void(0)">blau</a><aonclick=""neuefarbe('yellow=""href="javascript:void(0)">gelb</a></body></html>
Achso, kann sein, dass ich mir irgendein Schwachsinn zusammengebastelt habe...
Vielen Dank für deine schnell Antwort,
bin sehr dankbar für weitere Antworten...
Für mich sieht Dein Code so aus, als würdest Du mit einem Java-Script onClick-Handler die Farben des Applets ändern wollen. Stimmt das? Und falls ja, ist die Anforderung fix oder würde es notfalls auch ein Klick in das Applet selbst tun? Das wäre nämlich einfacher.
Ich bin mir nichtmal sicher, ob man Java-Scritp Events überhaupt an Applets weiterreichen kann...
Ja, ich wollte mittels onClick im Html die Hintergrundfarbe im Applet ändern
Nein, das onClick war nicht fix,
ich habe mir aus Büchern und Internet iwas zusammenbastelt und dachte, dass es dann iwie funktionieren würde, anscheinend doch nicht
publicclassBackgroundChangerextendsJApplet{privateRandom random =newRandom();publicBackgroundChanger(){addMouseListener(newMouseAdapter(){@OverridepublicvoidmousePressed(finalMouseEvent e){changeColor();}});}privatevoidchangeColor(){int red = random.nextInt(255);int green = random.nextInt(255);int blue = random.nextInt(255);Color background =newColor(red, green, blue);getContentPane().setBackground(background);}}
Oh Cool, vielen vielen Dank, aber
peinliche Frage, dieses "changeColor" geht iwie nicht
und könntest du mir dann ein paar Tipps für den HTML Teil geben?
Java:
importjava.applet.*;// Appletimportjava.awt.*;// Graphics/**
* Dieses Applet gibt den Schriftzug "Hallo Welt!" aus.
*/publicclassHalloWeltAppletPlusextendsJApplet{privateRandom=newRandom();publicvoidHalloWeltAppletPlus(){addMouseListener(newMouseAdapter(){@OverridepublicvoidmousePressed(finalMouseEvent e){changeColor();}});}privatevoidchangeColor(){int red = random.nextInt(255);int green = random.nextInt(255);int blue = random.nextInt(255);Color background =newColor(red, green, blue);getContentPane().setBackground(background);}
Der code aus deinem letzten Post dürfte gar nicht so compilieren:
Java:
privateRandom random =newRandom();//Der Variablenname fehlt
ansonsten müsste es funktionieren.
Was die Kommunikation zwischen Applets und JavaScript auf einer HTML-Seite angeht:
JavaScript kann über DOM alle öffentlichen Methoden eines Applets Aufrufen: