Paste verbieten

Status
Nicht offen für weitere Antworten.
G

guest

Gast
Hi,

ich möchte es dem User verbieten in ein JTextArea zu pasten. Er soll aber weiterhin reinschreiben dürfen. Wie kann man so etwas realisieren?

schonma' Danke!
 
G

guest

Gast
stimmt... und zwar so:

Code:
    public class PasteListener implements KeyListener
    {
        private JTextArea ta;
        private KeyStroke a     = KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK);
        private boolean pressed = false;



        public PasteListener(JTextArea ta)
        {
            this.ta = ta;
        }

        public void keyPressed(KeyEvent e)
        {
            if( KeyStroke.getKeyStrokeForEvent(e).equals(a))
            {
                ta.setEditable(false);
                pressed = true;
            }
        }

        public void keyReleased(KeyEvent e)
        {
            if( pressed)
            {
                ta.setEditable(true);
                pressed = false;
            }
        }

        public void keyTyped(KeyEvent e) {}
    }
 

deleted

Bekanntes Mitglied
Aber bedenke:
Es gibt noch mehr Möglichkeiten via copy&paste Infos zu übertragen...
Ich weiß ja nicht, was dein Programm da genau verhindern soll und warum.
Aber ein Zwang für den User da zu tippen ist das jetzt noch nicht...

Wenn du es ganz genau machen willst, musst du alle Tastatureingaben abfangen.
Also das Tippen des Users.
Da musst du dir notfalls deine eigene Textarea schreiben...
 
B

Beni

Gast
Es gibt noch mehr Möglichkeiten via copy&paste Infos zu übertragen...
Wenn ich mich recht entsinne, geht auch Drag&Drop...

Wieso willst du sowas überhaupt tun? Ich mein, ein Textfeld ist zum Daten eingeben, ist doch egal woher die kommen...
 
G

guest

Gast
Code:
ta.setDropTarget(null);

...und schon geht das mit dem Drag&Drop auch nicht mehr
 
G

guest

Gast
geht doch:

Code:
ta.setTransferHandler(null);
ta.setDropTarget(null);
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben