Warum funktioniert Draggen mit JTextarea nicht ?

Status
Nicht offen für weitere Antworten.
T

tops

Gast
Hallo,
in meiner Anwendung kann man JPanels dynamisch platzieren. Auf einem JPanel ist eine JTextArea mit Borderlayout.CENTER, die Textarea füllt also das ganze Panel, auf dem es 'klebt'.

Warum funktioniert das Draggen nicht ?

Wenn ich statdessen ein JLabel auf dem Panel habe, kann ich die Komponete wie gewohnt verschieben (Natürlich funktionieren die Mouselistener alle richtig )


Kennt jemand den Grund, warum das so nicht geht ?
 

Marco13

Top Contributor
tops hat gesagt.:
Hallo,
(Natürlich funktionieren die Mouselistener alle richtig )
Das bezweifle ich. Nicht nur, weil es ja funktionieren würde, wenn es funktionieren würde :lol: sondern auch, weil du, wenn du es geschafft hättest, den MouseListener für diesen Fall "funktionieren zu lassen", damit vermutlich kein Problem mehr hättest.

Vermutlich (!) ist der Grund der, dass die JTextArea SELBST ein MouseListener ist (man kann ja schließlich den Cursor mit der Maus platzieren). Wenn du die MouseClicks "abfangen" willst, BEVOR sie an der TextArea ankommen, wird das vermutlich nur mit einer GlassPane gehen...
http://java.sun.com/docs/books/tutorial/uiswing/components/rootpane.html
 
T

tops

Gast
hey, danke für den tip.
stimmt, das könnte nat so sein!
oh shit, glasspane...wieder was neues..

gucks mir mal an
 

Marco13

Top Contributor
Das ist eigentlich nur ein "durchsichtiges JPanel", das man sozusagen über den gesamten Frame legt. Standardmäßig kommen die Mausevents dann "zuerst" dort vorbei. Allerdings muss man dann entscheiden, ob man sie weiterreichen will, oder nicht (die Sache mit dem "redispatchEvent" in dem Codebeispiel auf der verlinkten Seite). Ich vermute, dass du deine TextArea ja auch noch irgendwie benuzen können willst - man muß also entscheiden, ob der Mausklick nun zum Draggen des Cursors oder zum Draggen der TextArea dienen soll. Sag einfach bescheid, wenns noch Fragen gibt.
 
T

tops

Gast
Hallo ,

könntest du mir nochmal auf die Sprünge helfen ?
also, ich habe eine maincomponent(jpanel), die alle elemente zusammenhält(menubar, viewingcomonent etc.)

auf der viewingcomponet (extends JlayeredPane) habe ich verschiedene panels, die man per drag und drop verschieben kann. auf einem jpanel klebt, wie schon oben erwähnt eine Jtextarea. auf den panels funktioniert der mouselistener, bei der component mit der textarea funktioniet es nicht richtig. ich habe mir das sun beispiel angeguckt und es mit einer textarea ausprobiert. das hat geklappt ;)

allerdings kann ich die glasspane nicht richtig in meine viewingcomponet integrieren. das ist ja ein layeredpane. über

this.getRootPane() komme ich wohl an die GlassPane heran, aber this.getRootPane() ist null ?

Ich kann das mit dem rootpane nicht so richtig übertragen, da ich nirgens einen JFrame verwende (wird in eine andere Anwendung integriert)

Meine Frage: Wie kann ich über eine JComponent diese GlassPane richtig setzen ?


hab auch schon sowas probiert:

Code:
  public  ViewingComponent () {
    JRootPane pane = new JRootPane();
    pane.add(this); //viewingcomponent = JLayeredPane
    this.getRootPane().setGlassPane(...);
    this.getRootPane().getGlassPane().setVisible(true);
   //... 
}

nix funzt ;(
 
G

Guest

Gast
achso ja,

der mouselistener soll ausschließlich auf draggen der componente reagieren. der inhalt der textarea wird über ein menü bearbeitet und ist nicht editierbar.
 
T

tops

Gast
hm, also ohne einen JFrame bekomme ich einfach keine GlassPane "zum laufen".

Ich werde es jetzt so machen, dass ich einfach den Listener von der Text Komponente entferne und dann einen eigenen
MouseListener für die Textarea schreibe.
 

Marco13

Top Contributor
Hm. Wenn du eine LayeredPane hast, köntnest du versuchen, ein durchsichtiges JPanel als "Pseudo-Glasspane" auf eine hohe Layer zu legen. Wenn DAS dann einen MouseListener implementiert, sollten eigentlich die Events abgefangen werden, wie bei einer GlassPane.
 
T

tops

Gast
so, nachdem ich ganze 3 tage alle vorschläge ausprobiert habe (mit dem layer funzt nicht, ein rand zum verschieben konnte ich aus bestimmten gründen auch nicht einsetzen) habe ich nun eine einfache lösung gefunden.
Die Texteingabe erfolgt nach wie vor über dialog mit einem JTextPane. Von dem eingegeben Text hole ich dann den html code und packe ihn einfach in ein JLabel, welches dann den Text anzeigt und sich prima "draggen" lässt.

Danke euch nochmal für die Tips.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Juelin if Abfrage funktioniert nicht richtig AWT, Swing, JavaFX & SWT 10
C Button ActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
P AWT Programm funktioniert nicht richtig AWT, Swing, JavaFX & SWT 35
MartinNeuerlich Kann mir jemand, der einen Mac mit einem m1 oder m2-Chip hat, eine POM geben mit der Javafx-Fullscreen beim Mac mit m-Chip funktioniert? AWT, Swing, JavaFX & SWT 1
R auto. Importanweisungen für javafx funktioniert in Eclipse nicht mehr AWT, Swing, JavaFX & SWT 4
M Scrollbar funktioniert nicht AWT, Swing, JavaFX & SWT 10
D Repaint Funktioniert nicht AWT, Swing, JavaFX & SWT 2
W JEditorPane textausrichtung nach settext funktioniert nicht mehr AWT, Swing, JavaFX & SWT 11
H Swing Anpassen der Textgröße im JLabel funktioniert nur bedingt AWT, Swing, JavaFX & SWT 7
sserio JFrame setIconImmage() funktioniert nicht AWT, Swing, JavaFX & SWT 3
T Swing Tooltip-Delay funktioniert nicht immer. AWT, Swing, JavaFX & SWT 1
B Output GUI funktioniert nur beim ersten Mal richtig. AWT, Swing, JavaFX & SWT 4
sserio Wie funktioniert ein Controller bei JavaFx? AWT, Swing, JavaFX & SWT 1
U Wie funktioniert das rotieren unter 2dGraphics, also wie stelle ich z. B. 90° ein? AWT, Swing, JavaFX & SWT 1
U Wie funktioniert Polygon? AWT, Swing, JavaFX & SWT 1
U Wie genau funktioniert 2dgraphics, in diesem Bezug? AWT, Swing, JavaFX & SWT 4
S ChoiceBox aus ArrayList per setValue() mit Wert belegen funktioniert nicht. AWT, Swing, JavaFX & SWT 0
H KeyListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
H BufferedImage zurücksetzen funktioniert nicht AWT, Swing, JavaFX & SWT 12
H RPG Programmieren, label.setLocation funktioniert nicht AWT, Swing, JavaFX & SWT 7
EinNickname9 Einfacher parser funktioniert nicht AWT, Swing, JavaFX & SWT 2
F Swing Adapt Row Height funktioniert nicht richtig :( AWT, Swing, JavaFX & SWT 7
P Swing jxmapviewer hinzufügen/nutzen funktioniert nicht AWT, Swing, JavaFX & SWT 7
CptK Wie funktioniert contains() für Path2D.Double AWT, Swing, JavaFX & SWT 10
J Anbindung Textfeldklasse an Table funktioniert nicht AWT, Swing, JavaFX & SWT 3
R Actionlistener funktioniert nicht AWT, Swing, JavaFX & SWT 4
B Stylen eines JTextPane funktioniert nicht AWT, Swing, JavaFX & SWT 1
VPChief Swing Eclipse: Nach Exportieren, Button funktioniert nicht mehr AWT, Swing, JavaFX & SWT 26
H Bewegung funktioniert nicht AWT, Swing, JavaFX & SWT 3
N Pixelfarbe abgleichen funktioniert nicht AWT, Swing, JavaFX & SWT 5
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
N eclipse Java, bilder benutzten Funktioniert nicht AWT, Swing, JavaFX & SWT 6
Zrebna JavaFX-Projekt mit Bildern funktioniert nicht - um Hilfe wird gebeten AWT, Swing, JavaFX & SWT 14
steven789hjk543 Swing Weiß jemand, warum dieses Programm nicht funktioniert? AWT, Swing, JavaFX & SWT 7
M Swing setMaximumSize funktioniert nicht AWT, Swing, JavaFX & SWT 1
K JavaFX funktioniert nicht AWT, Swing, JavaFX & SWT 2
B AWT actionPerformed Method funktioniert nicht AWT, Swing, JavaFX & SWT 12
L JavaFX Drag and Drop funktioniert nicht AWT, Swing, JavaFX & SWT 3
M Swing Code funktioniert auf Windows aber nicht Linux... AWT, Swing, JavaFX & SWT 3
T LookAndFeel LookAndFeel funktioniert nicht beim JFrame wechsel AWT, Swing, JavaFX & SWT 3
J JavaFX addListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
P CardLayout funktioniert fehlerhaft AWT, Swing, JavaFX & SWT 13
L WrapLayout funktioniert nicht AWT, Swing, JavaFX & SWT 1
kodela Accalerator für einige Menüoptionen funktioniert nicht mehr AWT, Swing, JavaFX & SWT 3
S JavaFX mit javac compilieren funktioniert nicht AWT, Swing, JavaFX & SWT 2
K Swing Entfernen von Panel funktioniert nicht AWT, Swing, JavaFX & SWT 5
J AWT System Farben / java.awt.SystemColor funktioniert nicht AWT, Swing, JavaFX & SWT 4
G Swing Swing Binding JList funktioniert nicht AWT, Swing, JavaFX & SWT 5
it_is_all ActionListener umlenken/ updaten mit AddActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 3
K javafx app > "run in browser" funktioniert nicht AWT, Swing, JavaFX & SWT 3
N JavaFX GridPane Halignment funktioniert nicht AWT, Swing, JavaFX & SWT 1
it_is_all JLabel.setIcon - funktioniert nicht mehr AWT, Swing, JavaFX & SWT 2
R Ausgabe über JOptionPane.showMessageDialog funktioniert nicht AWT, Swing, JavaFX & SWT 2
L 2D-Grafik Frage zu Ellipse2D.Double, Abfrage, ob Punkt enthalten ist funktioniert nicht AWT, Swing, JavaFX & SWT 3
J JTable Selection Listener funktioniert nicht AWT, Swing, JavaFX & SWT 4
F "ActionListener" funktioniert nicht AWT, Swing, JavaFX & SWT 4
Z BoxLayout funktioniert nicht und Buttongröße AWT, Swing, JavaFX & SWT 18
C Java Hintergrund funktioniert nicht AWT, Swing, JavaFX & SWT 9
J Swing Wie funktioniert dieser ChangePropertyListener??? AWT, Swing, JavaFX & SWT 0
GreenTeaYT Button funktioniert nicht für Ein-und Auszahlungen? AWT, Swing, JavaFX & SWT 8
C Keylistener funktioniert nicht AWT, Swing, JavaFX & SWT 1
A Swing Programm funktioniert aber zwei Buttons werden angezeigt AWT, Swing, JavaFX & SWT 3
M UIManager funktioniert nicht mit Farben AWT, Swing, JavaFX & SWT 9
M Swing UIManager funktioniert nicht mit Farben AWT, Swing, JavaFX & SWT 0
T KeyListener funktioniert nicht wenn ich ein JButton hinzufüge AWT, Swing, JavaFX & SWT 1
S JavaFX wie funktioniert CSS und javaFX AWT, Swing, JavaFX & SWT 19
S KeyListener funktioniert nicht AWT, Swing, JavaFX & SWT 2
J JScrollPane funktioniert nicht AWT, Swing, JavaFX & SWT 5
M JavaFX Eventhandler Funktioniert nicht AWT, Swing, JavaFX & SWT 3
Sogomn JavaFX Injektion funktioniert nicht AWT, Swing, JavaFX & SWT 4
Blender3D Swing KeyBoardListener funktioniert nicht unter UBUNTU AWT, Swing, JavaFX & SWT 7
J JavaFX Button funktioniert(nicht) AWT, Swing, JavaFX & SWT 3
J DefaultCloseOperation funktioniert nicht AWT, Swing, JavaFX & SWT 9
F JavaFX ObservableList -- warum funktioniert das so.... AWT, Swing, JavaFX & SWT 3
R Swing Bewegung eines Graphics Objektes innerhalb eines JPanels funktioniert nicht richtig AWT, Swing, JavaFX & SWT 2
Paul15 Button funktioniert nur einmal AWT, Swing, JavaFX & SWT 9
D Swing Warum erhalte ich keine Ausgabe? Funktioniert der equals-vergleich in actionPeformed nicht richtig? AWT, Swing, JavaFX & SWT 3
H UpdatePolicy wird nicht richtig gesetzt / funktioniert nicht AWT, Swing, JavaFX & SWT 5
W Paint-Methode in anderer Klasse funktioniert nicht AWT, Swing, JavaFX & SWT 7
N KeyListener funktioniert nicht richitg AWT, Swing, JavaFX & SWT 4
L Event Handling wie funktioniert .getComponent? AWT, Swing, JavaFX & SWT 1
B JavaFX Scene Builder: resize funktioniert (meist) nicht AWT, Swing, JavaFX & SWT 6
J Swing Basics - JButton funktioniert nicht. AWT, Swing, JavaFX & SWT 1
D Passwort [Aber mit 3 Versuchen] Funktioniert nicht wie erwartet AWT, Swing, JavaFX & SWT 4
C Applet Applet funktioniert in Eclipse aber nicht in Browser AWT, Swing, JavaFX & SWT 1
J Zellen in JavaFx einfärben funktioniert nicht AWT, Swing, JavaFX & SWT 1
S Swing Warum funktioniert der automatische Zeilenumbruch mit arabischen Zeichen beim JTextPane nicht AWT, Swing, JavaFX & SWT 3
Joew0815 JDialog repaint() funktioniert nicht wie gewünscht. AWT, Swing, JavaFX & SWT 2
C KeyPressed funktioniert auf iOS nicht richtig? AWT, Swing, JavaFX & SWT 4
D Event Handling MouseListener funktioniert seit Java 8 nicht mehr AWT, Swing, JavaFX & SWT 13
M LayoutManager GridLayout funktioniert nicht AWT, Swing, JavaFX & SWT 0
I Objekte aus contentPane löschen funktioniert nicht AWT, Swing, JavaFX & SWT 3
F JavaFX Antialiasing funktioniert nicht? AWT, Swing, JavaFX & SWT 8
F CardLayout.show() funktioniert teilweise nicht AWT, Swing, JavaFX & SWT 5
M Listener funktioniert nicht AWT, Swing, JavaFX & SWT 7
M "Update" der JTable funktioniert nicht AWT, Swing, JavaFX & SWT 2
T JAXB funktioniert ohne IDE nicht verlässlich AWT, Swing, JavaFX & SWT 12
C Repaint() funktioniert nicht in TabbedPanel AWT, Swing, JavaFX & SWT 5
T LayoutManager GridLayout panel.setSize funktioniert nicht AWT, Swing, JavaFX & SWT 1
R JavaFX Stage.close() funktioniert nicht im jar-File AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen


Oben