border entfernen

chrismass

Mitglied
Hallo!

Ich habe eine Content Pane auf die ich per Button beliebig viele JTextAreas hinzufügen kann. Nun möchte ich zu diesen JTextAreas einen MouseOver Effekt hinzufügen, der den Umfang des Objekts zeigt.
Ich habe nun einen MouseListener hinzugefügt. Bei MouseOver wird ein Rahmen gezeichnet. Wie kann ich nun bei MouseExited den Rahmen wieder löschen oder zumindest unsichtbar machen?

Hab mit UIManager rumprobiert, bin aber zu keinem Ergebnis gekommen.


Code:
public class GuiMatStyledText extends JTextArea implements ActionListener {

	public GuiMatStyledText() {
		super("Neuer Text");
		this.initComponent();
	}
	
	public GuiMatStyledText(String text) {
		super(text);
		if(text == "") {
			this.setText("Neuer Text");
		}
		this.initComponent();
	}
	
	// some basic stuff for this element
	public void initComponent() {
	setEditable(false);
		
        this.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                m_clicked(evt);
            }
            
        });
        
        this.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseEntered(java.awt.event.MouseEvent evt) {
                m_entered(evt);
            }
            
        });
        
        this.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseExited(java.awt.event.MouseEvent evt) {
                m_exited(evt);
            }
            
        });
        
	private void m_clicked(MouseEvent evt) {
		
		//.... anything ...
		
	}
	
	private void m_entered(MouseEvent evt) {	
		this.setBorder(BorderFactory.createLineBorder(Color.GRAY));
	}
	
	private void m_exited(MouseEvent evt) {
		// UIManager.put(this.getBorder(), false);
	}

...
 
Heyho..

hast du mal einfach setBorder(null) ausprobiert!?
Java:
element.setBorder(null);

Gruß
Felix
 

Neue Beiträge

Zurück