Canvas löschen über MouseEntered in Textfeld

DannyXY

Mitglied
Hallo erst mal , nach langem probieren und ständig neu auftretenden Problemen versuche ich es einfach mal hier bei euch , ist sicher keine große Sache nur hierfür fehlt mir defintiv noch die Erfahrung in Java...


Ich will einfach nur einen Kreis in einem Canvas zeichen lassen , aber sobald ich erneut mit dem Mauszeiger aufs Textfeld oder auf den Button komme soll er den Kreis löschen und dann neu zeichnen, aber es fuktioniert nicht , ich bekomm es nur über einen neuen Button hin wenn ich es dort lösche...
eigentlich müsste es doch schon damit funktionieren... genau wie bei einem ActionListener ???


Beim Versuch Java drauf hinzuweisen dass der button2 auch ein MouseEvent ist scheitere ich völlig...

Java:
public void Radius extends Applets implements MouseListener {

public void button2_MouseEntered ( MouseEvent e ) {             // darf hier button2_ sein ???
 canvas1.repaint(); } 
public void button2_MouseExited ( MouseEvent e ) {   
}
usw...


PS: Hilf euch der Quellcode da mehr ?
 

L-ectron-X

Gesperrter Benutzer
Der Code dürfte nicht kompilierbar sein.
Tausche
Code:
void
mit
Code:
class
in Zeile 1.

Ansonsten gibt dein Code nichts weiter für eine Analyse her.
 

DannyXY

Mitglied
Danke erst mal für die schnelle Antwort versuche ich gleich mal .
Hier ist mal der Code und die Stellen mit denen ich Probleme hab.
Was mir auch aufgefallen ist daß meine Kreise wandern , aber denke da schau ich selbst nochmal nach, ist ja sicher nur nen Offset der Koordinaten mit größer werden der Kreise...

Java:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
import java.awt.event.MouseListener;

/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 28.05.2012
  * @author
  */

public class Radius_im_canvas  extends Applet  {
  // Anfang Attribute
  private TextField textField1 = new TextField();
  private Button button1 = new Button();
  private Canvas canvas1 = new Canvas();
  private Button button2 = new Button();
  // Ende Attribute


  public void init() {
    Panel cp = new Panel(null);
    cp.setBounds(0, 0, 435, 487);
    add(cp);
    // Anfang Komponenten

    textField1.setBounds(8, 8, 201, 24);
    textField1.setText("textField1");

    cp.add(textField1);

    button1.setBounds(216, 8, 75, 25);
    button1.setLabel("button1");
    button1.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        button1_ActionPerformed(evt);
      }
    });
    cp.add(button1);
    canvas1.setBounds(100, 100, 500, 500);
    cp.add(canvas1);
    button2.setBounds(296, 8, 75, 25);
    button2.setLabel("button2");
    button2.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        button2_ActionPerformed(evt);
      }
    });
    
    // Dies hier macht mir richtig Probleme !!!!   <--------------------
    
    
    button2.addMouseListener(new MouseListener(){
      public void mouseEntered (MouseEvent e)   {
        button2_MouseEntered (e);
      }
    });  // <-------------------------------------------------------
    
    
    cp.add(button2);
    // Ende Komponenten
  }
  String Radius_S;
  Integer Radius_I;
  // Anfang Methoden
  public void button1_ActionPerformed(ActionEvent evt) {
  


    Radius_S = textField1.getText();
    // Radius_I = Integer.parseInt(Radius_S);
  
    try {
         Radius_I = Integer.parseInt(Radius_S);
    }
    catch ( NumberFormatException e) {
         textField1.setText("Bitte nur ganze Zahlen eingeben");
    }
  
    Graphics g=canvas1.getGraphics();
    g.setColor(Color.RED);
    g.fillOval(100,100,Radius_I*10,Radius_I*10);
    
    textField1.setText(String.valueOf(Radius_I)+" mm Radius");
    textField1.requestFocus();
    /* if (Radius_S.equals("")) {
        canvas1.repaint();
    }
   */
   
  }

  public void button2_ActionPerformed(ActionEvent evt) {
    canvas1.repaint();
  }
  // Den Button würde ich gerne umgehen aber mit dem MouseEvent bekomm ich es nicht gelöst 
  

  public void MouseEntered (MouseEvent e) {    //  <----------------------------------------
    canvas1.repaint();
    /*   if ( e.MOUSE_ENTEREDtextField1() ) {
         canvas1.repaint();
    } */                                                     //  <------------------------------------------
  }
  public void MouseExited (MouseEvent e) {
  }
  public void MouseClicked (MouseEvent e) {
  }
}
 
S

SlaterB

Gast
nenne doch deine Probleme (auch) direkt, schreibe Fehlermeldungen hin?

sicher merkt man manche wenn man den Code kopiert,
aber eher nur zufällig weil es so elementare sind,

eine Methode button2_MouseEntered() gibt es schlicht nicht, stattdessen eine die MouseEntered() heißt,
ist das ein Problem, das ohne Forum nicht zu lösen wäre?

ein bisschen trickreicher:
wenn du einen MouseListener implementierst, dann alle dessen Methoden, also auch mouseExited() + mouseClicked(),
welche du um Zeile 55 rum nicht hast, aber ganz unten für das Applet selber andeutest,
groß geschrieben ist natürlich eine Katastrophe, schreibe nie nie Methoden groß,

mit MouseAdapter brauchst du nicht alle implementieren, allerdings genau mit der Gefahr dass dann solche Tippfehler unbemerkt bleiben würden,
jedenfalls kommt das Programm dann bis nach mouseEntered(), repaint() wird auch ausgelöst,
was aber für sich praktisch nicht zu bemerken ist falls dasselbe wie vorher gemalt wird, also zweifelhaftes Ereignis,

du solltest nicht etwa darauf abzielen, in jedem paint() einen Wert zu erhöhen, aber paint() ist auch gar nicht überschrieben,

getGraphics() in button1_ActionPerformed() ist ein weiterer Riesenfehler, auch wenn es zugegebenerweise auf andere Art nicht so leicht ist,
aber getGraphics() findest du doch in keinem Tutorial, oder?
wenn mit getGraphics() querbeet gemalt wird, könnte natürlich repaint() etwas löschen, bei so schlimmen Vorgehen in der Tat denkbar..
 

DannyXY

Mitglied
Radius_im_canvas > is not abstract and does not override abstract method mouseEntered(java.awt.event.MouseEvent) in java.awt.event.MouseListener

Java:
 textField1.addMouseListener ( new MouseListener () {
----------------------------------------------------------|



WObei ich einfach dass Problem habe dass wir sowas in unserem Unterricht nicht durchgenommen haben sprich es ist was neues , und ich würde es gerne auf bestehende Programme anwenden , wie z.b. Lottospielen usw... da braucht man sowas zwar nicht aber ich würde gerne die Funktion verstehen wenn ich ein Button oder Textfeld berühre und eine Aktion ausgeführt wird ... ist ja egal was aber ich bekomme viel zu viele Fehlermeldungen da ich ja alles mit Hand eintippe und ich einfach auf dem Schlauch stehe...

PS: mit groß geschrieben meinst du sicher

if ( e.MOUSE_ENTEREDtextField1() ) {

kommt vom probieren weil es einfach 0 % klappt , da ist es ja noch einfacher ich tipp was mit Arrays oder Swing Radio Buttons .....



Mich ärgert auch total dass ich nicht mal

Java:
extends Applet implements MouseListener {

machen darf ????


Beim nachlesen werde ich auch nicht wirklich schlauer , liest sich alles gut aber irgendwas mache ich noch falsch!
 

L-ectron-X

Gesperrter Benutzer
Lies dir die Fehlermeldung mal genau durch, dann sollte dir etwas auffallen:
Radius_im_canvas > is not abstract and does not override abstract method mouseEntered(java.awt.event.MouseEvent) in java.awt.event.MouseListener


So, dann schauen wir noch mal in deinen Code und finden da aber:
Java:
  public void MouseEntered (MouseEvent e) {    //  <----------------------------------------
      ...                                                     //  <------------------------------------------
  }

  public void MouseExited (MouseEvent e) {
  }

  public void MouseClicked (MouseEvent e) {
  }
Erkennst du den Unterschied?
 
S

SlaterB

Gast
> Mich ärgert auch total dass ich nicht mal 'Applet implements MouseListener' machen darf ?
darfst du
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Eine theoretische Frage zur Praxis - JPanel oder Canvas Java Basics - Anfänger-Themen 5
B Canvas erstellen Java Basics - Anfänger-Themen 4
D Erste Schritte Canvas verschwinden nicht mehr Java Basics - Anfänger-Themen 2
J Rechteck zeichnen mit Canvas Java Basics - Anfänger-Themen 7
S canvas zeichnet nichts Java Basics - Anfänger-Themen 7
B Wert aus TextFeld in Canvas benutzen Java Basics - Anfänger-Themen 0
E Java Canvas Zeichnung Java Basics - Anfänger-Themen 2
J BlueJ canvas Buttons adden? Java Basics - Anfänger-Themen 2
S canvas Java Basics - Anfänger-Themen 9
T canvas killt KeyListener Java Basics - Anfänger-Themen 2
T canvas.setBackground(); Java Basics - Anfänger-Themen 2
U Zeichnen mit Canvas. Java Basics - Anfänger-Themen 5
A Canvas "löscht sich" Java Basics - Anfänger-Themen 14
T Canvas aktualisierung mit repaint Java Basics - Anfänger-Themen 5
G Bild in Panel oder canvas einfügen Java Basics - Anfänger-Themen 3
S Bild wird auf Canvas nicht angezeigt Java Basics - Anfänger-Themen 8
J Text auf Canvas zentrieren. Java Basics - Anfänger-Themen 4
F zeichnen auf Canvas will nicht klappen Java Basics - Anfänger-Themen 11
S NetBeans 6.0.1 / Zeichnen auf Canvas Java Basics - Anfänger-Themen 8
M Simple Animation funktioniert nicht (JFrame, Canvas, Thread) Java Basics - Anfänger-Themen 6
G Probleme mit JToolBar + Canvas Java Basics - Anfänger-Themen 6
Y Problem mit Canvas Java Basics - Anfänger-Themen 3
B 2 Canvas in einem JFrame Java Basics - Anfänger-Themen 2
philipp Problem mit Canvas Java Basics - Anfänger-Themen 5
S Canvas verkleinern -> Altes Stück Canvas wird weitergezei Java Basics - Anfänger-Themen 4
M Tooltips werden von Canvas "verschluckt" Java Basics - Anfänger-Themen 13
A wie füge ich eine Canvas in JFrame ein? Java Basics - Anfänger-Themen 11
C ein Canvas ist zu groß. mit Scrollbar ? Java Basics - Anfänger-Themen 8
L Canvas fokusieren Java Basics - Anfänger-Themen 4
C Problem mit Zeichnen auf einer extends Canvas Class... Java Basics - Anfänger-Themen 2
H Leere Zeilen in Textdatei löschen lassen Java Basics - Anfänger-Themen 5
V JSON-Objs aus JSON-Obj filtern und löschen (Manipulation ohne Kenntnis der vollst. Struktur) Java Basics - Anfänger-Themen 12
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
K Wie kann ich "enter" von der Console in Eclipse löschen? Java Basics - Anfänger-Themen 2
E Objekte löschen Java Basics - Anfänger-Themen 9
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
berserkerdq2 An selbst ersteller txt Datei immer Text dranhängen, ohne den vorherign Text zu löschen Java Basics - Anfänger-Themen 8
berserkerdq2 Überprüfen ob eine Schreibberechtigung auf ein file exisitert bzw. ob man dieses file löschen kann, wie? Java Basics - Anfänger-Themen 9
J Zelleninhalt einer Jtable löschen Java Basics - Anfänger-Themen 2
G Bitte meinen Account löschen Java Basics - Anfänger-Themen 1
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
W Beitrag löschen Java Basics - Anfänger-Themen 1
O Doppelt verkette Liste Element löschen Java Basics - Anfänger-Themen 15
B Objekte, bspw. konkret Arraylists,manuell aus Speicher löschen? Java Basics - Anfänger-Themen 70
M Abfrage j/n und Bildschirm löschen Java Basics - Anfänger-Themen 3
J JTable Spalteninhalt löschen Java Basics - Anfänger-Themen 1
L Methoden ArrayList Werte hinzufügen und löschen Java Basics - Anfänger-Themen 32
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
U Objekte in LinkedList löschen und editieren Java Basics - Anfänger-Themen 14
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
R Löschen und ausgeben eines Teilbaums Java Basics - Anfänger-Themen 3
V_Fynn03 Beliebiges Element in einer Liste löschen (Java)(Lineare Datenstrukturen) Java Basics - Anfänger-Themen 9
V_Fynn03 Lineare Datenstrukturen Element löschen? Java Basics - Anfänger-Themen 2
S Wann buffer löschen? Java Basics - Anfänger-Themen 5
S Windows printerqueue mit Java löschen Java Basics - Anfänger-Themen 3
M Objekt mit eindeutiger ID löschen, das nächste Objekt hat dann diese ID Java Basics - Anfänger-Themen 5
M Image löschen Java Basics - Anfänger-Themen 2
H Objekt aus einem Array löschen Java Basics - Anfänger-Themen 1
O Element aus Array löschen Java Basics - Anfänger-Themen 5
steven789hjk543 Kann ich manche Versionen des jdk löschen? Java Basics - Anfänger-Themen 6
M Sqlite table löschen und daten einfügen Java Basics - Anfänger-Themen 5
E Elemente aus Liste löschen Java Basics - Anfänger-Themen 5
W Map doppelte Values löschen Java Basics - Anfänger-Themen 3
T Löschen in doppelt verketteter Liste Java Basics - Anfänger-Themen 1
A Größten Eintrag aus Binärbaum löschen Java Basics - Anfänger-Themen 4
J am Anfang eines String ein Leerzeichen löschen Java Basics - Anfänger-Themen 6
Z Vocale löschen Java Basics - Anfänger-Themen 3
D B-Baum einfügen und löschen Java Basics - Anfänger-Themen 2
J Elemente in Array speichern, löschen, ... Java Basics - Anfänger-Themen 3
D Werte AVL-Baum löschen Java Basics - Anfänger-Themen 2
M Ordner mit Inhalt löschen Java Basics - Anfänger-Themen 7
M LinkedList elemente löschen Java Basics - Anfänger-Themen 2
R Datei löschen Java Basics - Anfänger-Themen 3
V Durch Methode Objekt löschen Java Basics - Anfänger-Themen 2
P Verbindung von Zwei Kreisen löschen ! Java Basics - Anfänger-Themen 6
D JTable Zeilen löschen Java Basics - Anfänger-Themen 5
I Hilfe beim löschen von Buchstaben. Java Basics - Anfänger-Themen 1
I Hilfe beim löschen schon Buchstaben. Java Basics - Anfänger-Themen 4
J Kann eine .jar sich selber Löschen? Java Basics - Anfänger-Themen 5
D Projekte + Datum + löschen Java Basics - Anfänger-Themen 11
B Methoden Element aus einem Array löschen, Rest nach vorne verschieben? Java Basics - Anfänger-Themen 4
K Element in ArrayList löschen ohne Index zu verschieben Java Basics - Anfänger-Themen 2
O Hilfestellellung bei Rekursivem Löschen Java Basics - Anfänger-Themen 11
N Generischer Binärbaum - löschen Java Basics - Anfänger-Themen 1
P Vector durchsuchen und Elemente löschen Java Basics - Anfänger-Themen 4
G zeichen einer Zeile löschen Java Basics - Anfänger-Themen 4
R [Erledigt]Fehler beim löschen von einzelnen Buchstaben aus StringBuilder Java Basics - Anfänger-Themen 1
F Element aus LinkedList löschen Java Basics - Anfänger-Themen 3
B lanterna einzelne Zeichen aus dem Terminal löschen Java Basics - Anfänger-Themen 0
S jList --> Array einfügen und Liste löschen Java Basics - Anfänger-Themen 5
O Löschen lange pfade...Fehler? Java Basics - Anfänger-Themen 1
O Eclipse Liste Löschen Java Basics - Anfänger-Themen 5
Bluedaishi Dateien Lassen sich unter windows nicht löschen Java Basics - Anfänger-Themen 8
K Klassen Objekte löschen Java Basics - Anfänger-Themen 11
B Methoden BinärBaum als String Knoten löschen Java Basics - Anfänger-Themen 5
D String in Datei suchen und löschen Java Basics - Anfänger-Themen 2
S Grafik löschen Java Basics - Anfänger-Themen 10
L Daten aus Array Feld löschen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben