ComponentListener entfernen?

Status
Nicht offen für weitere Antworten.
F

frager

Gast
hallo, ich habe an mein jframe einen componentlistener gehangen, welche das fester am rand des bildschirms andockt, also so ne art magnet. das geht auch, nur kann ich diesen nicht mehr entfernen! der listener heisst Snapper und ich adde ihn mit

Code:
Snapper s = new Snapper();
frame.addComponentListener(s)

so und entfernen mit frame.removeComponentListener(s). das geht aber nicht. wie aner sonst?

danke :)
 

André Uhres

Top Contributor
Es war jedenfalls nicht böse gemeint, falls es so sein sollte.
Aber da sowieso nur ein ComponentListener da, finde ich nichts arges daran :wink:
 

Leroy42

Top Contributor
Da die andere Uhr mich ja verstanden hat, nochmal die
Erklärung für das Fußvolk :bae:

Ich selbst würde lieber auf Nummer Sicher gehen und
Programmteilen nur die Listener entfernen lassen
dürfen, die sie selbst angelegt haben. Und dafür ist
das Wissen über den Listener (die Referenz auf ihn)
ein gutes Kriterium.

Oder frei nach einem bekannten Zitat:

Wer bin ich, daß ich morgen noch weiß, wo ich welcher
Komponente welche Listener verpasse.
 

Leroy42

Top Contributor
Dafür habe ich jetzt wegen dir meinen heutigen
Vorrat an Buchstaben aufgebraucht und muß
Feierabend machen :shock:

:toll:
 
F

frager

Gast
hi, ja klar muss das alles bekannt sein, aber das ist es. ich kann den listener auf knopfdruck hinzufügen, aber ich bekomm ich nicht mehr weg. hab beide obigen varianten ausprobiert. das frame, wo ich ihn anhänge und entfernen will, liegt eín einer anderen klasse und ich lass mir das über eine getter methode zurückgeben. wenn das nicht gehen würde, könnte ich den listener ja nicht mal dranhängen, oder? noch jemand eine idee?

vielen dank
 

Leroy42

Top Contributor
Es ist mir nicht ganz klar was du vorhast.

Du hast eine Klasse in der du auf Knopfdruck, also wahrscheinlich
in einer actionPerformed-Methode, einem zweiten Frame einen
Component-Listener hinzufügst.

Gibt es jeweils nur einen Listener oder was passiert bei mehrmaligen
Knopfdruck?

Du mußt dir den (oder die) erzeugten Listener innerhalb der Klasse merken.
Eine Referenz innerhalb der Methode die den Listener erzeugt, bringt
dir nichts weil du ja später wissen mußt, welchen Listener du entfernen
willst.

Kann ich mir das ungefähr so vorstellen?
Code:
class Frame1 extends JFrame {
  private JFrame frame2;
  private ComponentListener listener;

  public Frame1() {
      ...
      button.addActionListener(new ActionListener() {
        public void actionPerformed() {
            if (listener == null) {
                listener = new Snapper();
                frame2.addComponentListener(listener);
            } else {
                frame2.removeComponentListener(listener);
            }
        }});
  }
}
 
F

frager

Gast
hi, nein. es ist so. ich hab oben in der einen klasse den snapper, also

Code:
private Snapper s = new Snapper();

das ganze wird über eine checkbox gesteuert. am anfang ist kein haken gesetzt, also kein listener dran. wird der haken gesetzt und auf ok gedrückt, dann häng ich den dran und zwar so:

Code:
if(isSelected)
ca.returnMainFrame.addComponentListener(s) 
else
ca.returnMainFrame.removeComponentListener(s) 
//ca ist ein object meiner hauptklasse, welches per konstruktor übergeben wird

es ist eben ein fenster mit haken zum setzen un nem ok knopf. drück man den ok knopf, werden die haken abgefragt und entsrepchend operationen ausgefhrt. aber das geht eben in diesem fall nicht...

gruß
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W JComponent - ComponentListener - resized / moved AWT, Swing, JavaFX & SWT 5
V Swing Neue Größe bei ComponentListener noch nicht verfügbar? AWT, Swing, JavaFX & SWT 3
B ComponentListener hört nicht zu AWT, Swing, JavaFX & SWT 6
S ComponentListener funzt nicht AWT, Swing, JavaFX & SWT 3
H Swing Wie Fokus von JTextField entfernen? AWT, Swing, JavaFX & SWT 9
TheWhiteShadow JavaFX ListView Problem beim Entfernen von Elementen AWT, Swing, JavaFX & SWT 1
J JavaFX - Included FXML - Entfernen feststellen AWT, Swing, JavaFX & SWT 2
Monokuma Canvas Form entfernen AWT, Swing, JavaFX & SWT 2
R AWT Listeners entfernen AWT, Swing, JavaFX & SWT 0
kodela angezeigtes Image entfernen AWT, Swing, JavaFX & SWT 1
N JavaFX Group: Gezieltes entfernen eines Objects (Rectangle) AWT, Swing, JavaFX & SWT 0
xYurisha Aus einer Gui Buttons, Label und ProgessBars entfernen AWT, Swing, JavaFX & SWT 4
K Swing Entfernen von Panel funktioniert nicht AWT, Swing, JavaFX & SWT 5
B Swing mehrfache Tabelleneinträge entfernen AWT, Swing, JavaFX & SWT 5
M Default-WindowListener JFrame entfernen (Stichwort: iconified) AWT, Swing, JavaFX & SWT 4
M JavaFX TableView & CSS, Rand um Tabellenkopf entfernen AWT, Swing, JavaFX & SWT 3
C SWT MenuBar & MenuItems Fokus wenn F10 unterdrücken/entfernen AWT, Swing, JavaFX & SWT 9
T Swing Tabelle mit Button - Anzeigefehler nach Zeile entfernen AWT, Swing, JavaFX & SWT 1
I Spielsteine zeichnen und entfernen AWT, Swing, JavaFX & SWT 3
wolfgang63 JavaFX Elemente einer Group entfernen AWT, Swing, JavaFX & SWT 1
C Geloest: JTextfield: Titel automatisch entfernen, sobald Text eingegeben wird AWT, Swing, JavaFX & SWT 1
S Die Rücktaste und Entfernen in einer Textarea blockieren AWT, Swing, JavaFX & SWT 3
C JavaFX Entfernen vom "java" Menüeintrag in der Systemmenüleiste in Mac OsX in Verbindung mit JavaFX AWT, Swing, JavaFX & SWT 1
S SWT [TextBox] Bestimmtes Zeichen entfernen unterbinden AWT, Swing, JavaFX & SWT 3
M Element aus JList eines JFileChooser entfernen AWT, Swing, JavaFX & SWT 3
B Buttons entfernen / hinzufügen AWT, Swing, JavaFX & SWT 5
B Fokus markierung entfernen AWT, Swing, JavaFX & SWT 2
M Makierung bei JRadioButton entfernen AWT, Swing, JavaFX & SWT 5
C AWT Fokus von Component entfernen, wenn kein anderes vorhanden AWT, Swing, JavaFX & SWT 4
C SWT CTabFolder / CTabItem Markierung des angewählten Tabs entfernen AWT, Swing, JavaFX & SWT 10
S ImageIcon von Label entfernen AWT, Swing, JavaFX & SWT 9
R Komponente wieder entfernen AWT, Swing, JavaFX & SWT 13
B Komponente "sauber" entfernen(JToolBar) AWT, Swing, JavaFX & SWT 4
R JPanel von JScrollPane entfernen und hinzufügen AWT, Swing, JavaFX & SWT 3
G Swing JTree - Verbindungslinien entfernen AWT, Swing, JavaFX & SWT 4
AyKay SWT (alle) Listener bzw. ModifyEventListener entfernen AWT, Swing, JavaFX & SWT 2
Z Swing Bild aus Panel entfernen AWT, Swing, JavaFX & SWT 12
C Swing JLabels entfernen und neue einfügen AWT, Swing, JavaFX & SWT 6
G Swing MigLayout: Lücken zwischen Elementen entfernen AWT, Swing, JavaFX & SWT 2
Z Swing Buttons wieder entfernen vom Bildschirm AWT, Swing, JavaFX & SWT 5
E Swing Den Button Vergrössern/Verkleinern entfernen AWT, Swing, JavaFX & SWT 4
A Komponenten zur Laufzeit entfernen AWT, Swing, JavaFX & SWT 3
multiholle Button bei Klick entfernen AWT, Swing, JavaFX & SWT 3
A Swing JList Einträge entfernen AWT, Swing, JavaFX & SWT 6
M Swing Rahmen innerhalb des JButton entfernen AWT, Swing, JavaFX & SWT 2
H JFrame Rahmen entfernen AWT, Swing, JavaFX & SWT 1
H JList: Selection-Border entfernen AWT, Swing, JavaFX & SWT 2
T Dynamisches hinzufügen und entfernen von Bildern AWT, Swing, JavaFX & SWT 3
C Swing Schließen, Maximieren, Minimieren entfernen AWT, Swing, JavaFX & SWT 6
S Swing JInternalFrame: Titelleiste entfernen AWT, Swing, JavaFX & SWT 5
L GUI Komponenten zur Laufzeit entfernen AWT, Swing, JavaFX & SWT 4
K SWT und Tree, wie kann ich TreeItem aus einem Tree entfernen? AWT, Swing, JavaFX & SWT 12
byte JTabbedPane - Insets entfernen AWT, Swing, JavaFX & SWT 7
T JTree - alle Nodes entfernen AWT, Swing, JavaFX & SWT 8
T Abbrechen-Icon entfernen AWT, Swing, JavaFX & SWT 4
S JLabel entfernen AWT, Swing, JavaFX & SWT 9
M Redundanzen in JTable entfernen? AWT, Swing, JavaFX & SWT 9
T JCheckBox deselektieren (Haken wieder entfernen) - wie? AWT, Swing, JavaFX & SWT 5
G Entfernen von Tags in EditorPane AWT, Swing, JavaFX & SWT 6
P Alle Komponenten von JPanel in der Mitte entfernen AWT, Swing, JavaFX & SWT 2
D RadioButton abstand entfernen AWT, Swing, JavaFX & SWT 2
J Border bei JSplitPane entfernen? AWT, Swing, JavaFX & SWT 2
S SWT Table - Wie Columns hinzufügen / entfernen AWT, Swing, JavaFX & SWT 3
V JCheckBoxMenuItem "Rahmen" entfernen AWT, Swing, JavaFX & SWT 25
M JCheckBox Standard MouseListener entfernen AWT, Swing, JavaFX & SWT 13
M leerzeichen aus string entfernen AWT, Swing, JavaFX & SWT 3
I JFrame-Anmerkung "Java Applet Window" entfernen AWT, Swing, JavaFX & SWT 4
M PlainDocument von JTextField entfernen AWT, Swing, JavaFX & SWT 2
I JFrame Applet-Anmerkung entfernen ? - Teil 2 AWT, Swing, JavaFX & SWT 5
P TextFeld Focus entfernen AWT, Swing, JavaFX & SWT 2
A Komponente entfernen. Kein neuzeichnen nach validate() AWT, Swing, JavaFX & SWT 2
G SWT Toolbar: Toolitem entfernen und wieder hinzufügen AWT, Swing, JavaFX & SWT 16
S Entfernen eines Menueintrages AWT, Swing, JavaFX & SWT 5
P JList Selektierung entfernen AWT, Swing, JavaFX & SWT 3
P JMenu / JMenuItem durch Rekursion Icons entfernen AWT, Swing, JavaFX & SWT 4
C JInternalFrames von JDesktopFrame entfernen AWT, Swing, JavaFX & SWT 2
S entfernen und hinzufügen von JScrollPane AWT, Swing, JavaFX & SWT 2
N Minimieren- und Maximieren-Button eines JFrame entfernen? AWT, Swing, JavaFX & SWT 11
F JFrame Applet-Anmerkung entfernen ? :( AWT, Swing, JavaFX & SWT 41
R JLabel Icon wieder entfernen AWT, Swing, JavaFX & SWT 4
L textfeld entfernen AWT, Swing, JavaFX & SWT 4
L Label-Icon entfernen? AWT, Swing, JavaFX & SWT 4
A Titelleiste entfernen AWT, Swing, JavaFX & SWT 4
R Anonymen CaretListener wieder entfernen AWT, Swing, JavaFX & SWT 4
G TableModel von JTable wieder entfernen AWT, Swing, JavaFX & SWT 10
X Container aus FocusCycle entfernen AWT, Swing, JavaFX & SWT 2
R Component aus Container entfernen bzw. austauschen. AWT, Swing, JavaFX & SWT 6
X JTree: Selektion nach dem Entfernen von Knoten AWT, Swing, JavaFX & SWT 2
B Listener entfernen bei JScrollbar AWT, Swing, JavaFX & SWT 6
A Title von JDialog entfernen..? AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben