(MouseListener im Applet?) einzelne Komponenten neuzeichnen?

Status
Nicht offen für weitere Antworten.

Donut

Bekanntes Mitglied
Wie wende ich ein MouseListener in einem Applet an?
Wo muss ich ihn anmelden? in der init() oder Start() - Methode und was muss ich beachten?
Folgendes gibt bei klick eine NullPointerException:

Code:
     public void init()
     {
		addMouseListener(new MouseListener()
							 {
								public void mouseClicked(MouseEvent e){g.setColor(new Color(0, 0, 0)); g.fillRect(20, 176, 83, 186);}   //bei klick zum Testen ein Rechteck zeichnen
								public void mouseEntered(MouseEvent e){return;}
								public void mouseExited (MouseEvent e){return;}
								public void mousePressed (MouseEvent e){return;}
								public void mouseReleased(MouseEvent e){return;}
							 }						
						 );

danke schon mal

Bits&Bytes
Donut
 

L-ectron-X

Gesperrter Benutzer
Melde den MouseListener in der init()-Methode an
Auch ist in Deinem Applet die Programmierung der MouseEvent-Methoden nicht richtig. Die werden nicht in der init()-Methode überschrieben sondern innerhalb vom Rumpf des Applets. Also so:
Code:
public class MeinApplet extends java.applet.Applet
   implements MouseListener {

   //Deklaration der Instanz-Variablen
   ...

   public void init() {
      //Intitialisierung aller Komponenten des Applets
      ...
      addMouseListener(this);
      ...
   }

   //Überschreiben der MouseClicked()-Methode
   public void mouseClicked(java.awt.event.MouseEvent me) {
      //was getan werden soll
   }
}
Die NullPointerException erhältst Du vermutlich, weil die java.awt.Graphics-Instanz nirgens deklariert wurde.
 

Illuvatar

Top Contributor
Hm, hm... :)
l-ectron-x hat gesagt.:
Melde den MouseListener in der init()-Methode an
Du kannst den MouseListener anmelden wo du willst.
l-ectron-x hat gesagt.:
Auch ist in Deinem Applet die Programmierung der MouseEvent-Methoden nicht richtig. Die werden nicht in der init()-Methode überschrieben sondern innerhalb vom Rumpf des Applets. Also so:
Wenn du das so machst, muss deine Klasse MouseListener implementieren. Ich ziehe aber Donuts Methode vor, nämlich eine anonyme Klassse, das, was Donut geschrieben hat, ist völlig korrekt.
l-ectron-x hat gesagt.:
Die NullPointerException erhältst Du vermutlich, weil die java.awt.Graphics-Instanz nirgens deklariert wurde.
Dann würed das Programm nicht kompilieren. Vermutlich steht irgendwo außerhalb der init Methode Graphics g, aber nirgends steht g = getGraphics();
Wenn du das so machst, wird das Rechteck übrigens beim nächsten repaint verschwinden.
Guck auch mal hier.
 

Donut

Bekanntes Mitglied
hmm

könnt ihr mir das System von paint() und repaint() erklären?
also wenn ich irgendwo repaint(); ausführe wird alles weggelöscht, es sein denn, man macht was?
wie erstelle ich eine Animation, bei dem nur ein objekt verändert wird?
 

L-ectron-X

Gesperrter Benutzer
paint(Graphics g) ist eine Methode, die automatisch vom Browser aufgerufen wird. Z.B nach dem Start eines Applets, einem MouseEvent oder beim Scrollen des in eine Webseite eingebetteten Applets in den Anzeigebereich. repaint() ruft im Grunde nur die paint()-Methode eines Component-Objekts (von dem java.applet.Applet indirekt abgeleitet ist) auf, um ein Neuzeichnen zu erzwingen.
wie erstelle ich eine Animation, bei dem nur ein objekt verändert wird?
Ich glaube die Frage hast Du schon selbst beantwortet. In dem Du nur dieses Objekt veränderst.
 

Donut

Bekanntes Mitglied
mmhh aha :D

jetzt entsptet dabei aber folgendes problem:
wenn ich dieses Objekt durch ne schleife langsam verändere unc immer wieder repaint(); aufrufe, werden alle Komponenten aufgerischt und folglich flimmert alles....

kann man auch nur ein objekt neu zeichnen?
 
G

Guest

Gast
Füg diese Globalen Variablen...

Code:
    private Image dbImage;
    private Graphics dbGraphics;

...und diese Methode in dein Applet ein:
Code:
public void update(Graphics g)
{
  //Double-Buffer initialisieren
    if (dbImage == null) {
     dbImage = createImage(
      this.getWidth(),
      this.getHeight()
     );
     dbGraphics = dbImage.getGraphics();
    }
   //Hintergrund löschen
   dbGraphics.setColor(getBackground());
   dbGraphics.fillRect(
     0,
     0,
     this.getWidth(),
     this.getHeight()
   );
   //Vordergrund zeichnen
   dbGraphics.setColor(getForeground());
   paint(dbGraphics);
   //Offscreen anzeigen
   g.drawImage(dbImage,0,0,this);
 }


Eventuell must du was ändern, bei mir war das jedenfalls nicht nötig.
Weiter Informationen unter: http://www.dpunkt.de/java/Programmieren_mit_Java/Grafikprogrammierung/10.html
 

nudelsalat

Neues Mitglied
Jetzt hab ich doch glatt den Login vergessen -_-

Seis drum, das Javabuch hat unter dem Stichwort Offscreen auch noch was zu erzählen.
(Dort steht auch der eben erwähnte Code drin)
www.javabuch.de
 

Donut

Bekanntes Mitglied
@nudelsalat
das ist prinzipiell sehr praktisch ...
nur arbeite ich nicht mit Grafiken sondern mit selbstgezeichneten formen, die auch noch halbtransparent sind.

vereinfacht also:
man nehme diese Konstellation als basis:
java_trans.jpg


Jetzt soll das gelbe Rechteck grün werden(meinetwegen bei mausklick) , ohne das rote neu zu zeichnen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D JApplet & MouseListener Tools - Maven, Gradle, Ant & mehr 5
N Java MouseListener. Tools - Maven, Gradle, Ant & mehr 2
B Applet: com.sun.deploy.security.BlockedException :-( Tools - Maven, Gradle, Ant & mehr 0
M Applet Applet legt Browser lahm Tools - Maven, Gradle, Ant & mehr 3
J Applet Aus anderer Browserinstanz Applet abfragen Tools - Maven, Gradle, Ant & mehr 2
P Linux Applet/Webstart Schriftunterschiede Tools - Maven, Gradle, Ant & mehr 3
E JMol -Applet Einbindung Tools - Maven, Gradle, Ant & mehr 0
T Applet Applet und IText wirft Incompatible magic value 1008813135 Fehler Tools - Maven, Gradle, Ant & mehr 6
P Applet Java Applet läuft im Browser nicht mehr (HTTPClient - NoClassDefFoundError) Tools - Maven, Gradle, Ant & mehr 3
P Applet Applet Signatur auf Server mit SSL-Zertifikat? Tools - Maven, Gradle, Ant & mehr 7
H Applet Applet wird nicht angezeigt Tools - Maven, Gradle, Ant & mehr 2
M Applet Applet funktioniert in Google Chrome nicht Tools - Maven, Gradle, Ant & mehr 2
O Applet "Anwendung kann nicht ausgeführt werden" Tools - Maven, Gradle, Ant & mehr 6
Q Applet Fehlermeldung bei Applet-Wechsel Tools - Maven, Gradle, Ant & mehr 4
T Daten per POST-Methode aus Java-Applet nach php-Script senden Tools - Maven, Gradle, Ant & mehr 3
R Applet friert Adresszeile des Firefox ein Tools - Maven, Gradle, Ant & mehr 2
K Applet als Jar-Datei in HTML einbinden Tools - Maven, Gradle, Ant & mehr 14
H Applet-Fehlermeldung Tools - Maven, Gradle, Ant & mehr 10
H Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 3
Q Applet Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 14
J Applet URL mittels TTS als Applet lesen lassen Tools - Maven, Gradle, Ant & mehr 40
F Applet verwischt, wenn Seite gescrollt wird Tools - Maven, Gradle, Ant & mehr 16
S Applet Applet mit C# öffnen: java.lang.SecurityException: Permission denied (WinXP) Tools - Maven, Gradle, Ant & mehr 8
J Applet-Quellcode einsehen Tools - Maven, Gradle, Ant & mehr 6
E Applet Applet und Datenbank Konzept Tools - Maven, Gradle, Ant & mehr 4
A Applet: Html Datei und Class Datei nicht im selben Verzeichnis Tools - Maven, Gradle, Ant & mehr 2
S Applet soll Textdatei von fremdem Server öffnen Tools - Maven, Gradle, Ant & mehr 8
E Java Applet bearbeiten Tools - Maven, Gradle, Ant & mehr 8
Quasar Wie signiere ich mein Applet richtig? Tools - Maven, Gradle, Ant & mehr 6
M mit Applet Javascript Aufrufen Tools - Maven, Gradle, Ant & mehr 2
S Applet and stop() method und gui blocked Tools - Maven, Gradle, Ant & mehr 4
A Applet Applet startet nach Einbinden auf Website nicht Tools - Maven, Gradle, Ant & mehr 4
A Applet, xxx.jar und hsqldb Tools - Maven, Gradle, Ant & mehr 4
T Webstart oder Applet Tools - Maven, Gradle, Ant & mehr 2
H Applet applet neu laden im browser Tools - Maven, Gradle, Ant & mehr 10
M Applet neustart Tools - Maven, Gradle, Ant & mehr 5
S Applet request unter Linux Tools - Maven, Gradle, Ant & mehr 14
S Applet GUI nicht im Webbrowser sichtbar Tools - Maven, Gradle, Ant & mehr 5
S Mittel Applet Datei an ein Webserver übertragen Tools - Maven, Gradle, Ant & mehr 2
M Applet in ClientServer J2EE Anwendung debugen Tools - Maven, Gradle, Ant & mehr 6
H Java Applet Problem beim einbinden in HTML Tools - Maven, Gradle, Ant & mehr 3
M Java3D Applet flackert wenn ein Button(HTML) gedrückt wird Tools - Maven, Gradle, Ant & mehr 11
S Policy mit Signiertem Applet verteilen Tools - Maven, Gradle, Ant & mehr 9
F Applet findet include nicht Tools - Maven, Gradle, Ant & mehr 15
L PHP + Java Applet Kommunikation Tools - Maven, Gradle, Ant & mehr 9
C Probleme mit Applet mit SQL im Browser Tools - Maven, Gradle, Ant & mehr 4
G Java-Applet Probleme beim Browser Tools - Maven, Gradle, Ant & mehr 14
G Textfile in Applet laden möglich? Tools - Maven, Gradle, Ant & mehr 2
A Java-Applet Sandbox deaktiviren? Tools - Maven, Gradle, Ant & mehr 2
B Java-Applet geht nicht (auf dem Webserver) Tools - Maven, Gradle, Ant & mehr 9
P Applet läuft nicht in Browser Tools - Maven, Gradle, Ant & mehr 21
V JAR-Datei eines (J)Applet funktioniert nicht - Help! Tools - Maven, Gradle, Ant & mehr 19
S Java Applet per Klick starten? Tools - Maven, Gradle, Ant & mehr 6
S Applet geht nicht Tools - Maven, Gradle, Ant & mehr 25
J Applet signieren Tools - Maven, Gradle, Ant & mehr 2
H Applet - Geschicklichkeitsspiel programmieren Tools - Maven, Gradle, Ant & mehr 16
U Jar funktioniert nicht als Applet Tools - Maven, Gradle, Ant & mehr 3
C Applet Frage Tools - Maven, Gradle, Ant & mehr 4
M Java Applet - enforce use of older JRE Tools - Maven, Gradle, Ant & mehr 3
N Wie Java-Programm zu Applet machen?! Tools - Maven, Gradle, Ant & mehr 2
W Webseite aus Applet öffnen Tools - Maven, Gradle, Ant & mehr 3
lumo Applet - resize Tools - Maven, Gradle, Ant & mehr 7
Icewind Applet reagiert nach neu laden der Webseite nicht mehr verlässlich auf KeyEvents Tools - Maven, Gradle, Ant & mehr 6
R Applet mit MySQL Tools - Maven, Gradle, Ant & mehr 3
A jar datei trotz zertifikat nich aus applet ausführbar Tools - Maven, Gradle, Ant & mehr 4
F Fehlende Applet Rechte Tools - Maven, Gradle, Ant & mehr 12
N [Applet] Button wir nach 5 secs Unsichtbar Tools - Maven, Gradle, Ant & mehr 2
N jar -> applet wie setzt man das am leichtesten um Tools - Maven, Gradle, Ant & mehr 7
V applet Java 1.6 -> 1.5 Problem ... wie mit Ant zu lösen? Tools - Maven, Gradle, Ant & mehr 7
F applet als JAR -> AccessControlException Tools - Maven, Gradle, Ant & mehr 3
grudge File in Applet laden Tools - Maven, Gradle, Ant & mehr 4
E Java Applet - Double Buffering Problem (Flackern) Tools - Maven, Gradle, Ant & mehr 6
R Applet mit bestimmter JRE ausführen Tools - Maven, Gradle, Ant & mehr 9
traysa Wie binde ich ein applet in eine jsp Tools - Maven, Gradle, Ant & mehr 3
D Mit dem Applet das DOM manipulieren? Tools - Maven, Gradle, Ant & mehr 3
ABstraCT Applet getCodeBase() Zugriff auf darüberliegendenden Ordner ? Tools - Maven, Gradle, Ant & mehr 1
S Java-Applet Steuerung IO Karte am Drucker-Port Tools - Maven, Gradle, Ant & mehr 4
P URL aus Applet öffnen? Tools - Maven, Gradle, Ant & mehr 7
ABstraCT Mit Applet in ne Datei auf seinem Server schreiben. Tools - Maven, Gradle, Ant & mehr 10
E Verzögerung beim Refresh (F5) mit einem Applet verursachen Tools - Maven, Gradle, Ant & mehr 16
deetee Applet Frage Tools - Maven, Gradle, Ant & mehr 2
S Fehler in einem Upload - Applet (nicht gelöst!!) Tools - Maven, Gradle, Ant & mehr 2
G Variable an zweites Applet übergeben Tools - Maven, Gradle, Ant & mehr 3
M Dringend: Sehr kompliziertes Applet Problem Tools - Maven, Gradle, Ant & mehr 4
O Javascript kommuniziert mit Applet? Tools - Maven, Gradle, Ant & mehr 2
H Spracherkennung mit Applet / Policy bzw. Security Fehler Tools - Maven, Gradle, Ant & mehr 2
zilti Nerviger Hinweis bei Applet- und WS-Fenstern - wieso? Tools - Maven, Gradle, Ant & mehr 3
S Datei-/Verzeichniszugriff von signiertem Applet Tools - Maven, Gradle, Ant & mehr 6
G Signiertes Applet installieren? Tools - Maven, Gradle, Ant & mehr 3
G Applet mit Parameter aus JavaScript Tools - Maven, Gradle, Ant & mehr 5
A Applet Maus Koordinaten ohne MouseMotionListener Tools - Maven, Gradle, Ant & mehr 3
K Applet in Eclipse funktioniert, im Browser nicht Tools - Maven, Gradle, Ant & mehr 7
T Applet soll Java Programm starten Tools - Maven, Gradle, Ant & mehr 2
S Applet pai.nt? Tools - Maven, Gradle, Ant & mehr 3
S Applet und File-Object? Tools - Maven, Gradle, Ant & mehr 9
T Applet soll Datei lesen (darf es aber nicht.) Tools - Maven, Gradle, Ant & mehr 3
P Java-Applet funktioniert unter WINXP nicht Tools - Maven, Gradle, Ant & mehr 2
N Java 1.6 Applet auf älteren Versionen ausführbar? Tools - Maven, Gradle, Ant & mehr 4
G Signiertes Applet prüfen? Tools - Maven, Gradle, Ant & mehr 3
H Problem mit einen Applet Tools - Maven, Gradle, Ant & mehr 5

Ähnliche Java Themen

Neue Themen


Oben