Zwischenablage/ Drag and Drop

Manuela

Aktives Mitglied
Hallo,
ich finde mal wieder den Wald vor lauter Bäumen nicht.

Meine Frage ist follgende:
Wenn ich auf den Explorer ein Bild(jpg) kopiere, habe ich das Bild im Zwischenspeicher.
Jetzt will ich aber im meinem Programm genau das Bild speichern (das Bild (Adresse) aus dem Zwischenspeicher) an meine Programmadresse speichern???

Oder geht das auch Drag and Drop wenn Ja wie ???

Gruß Manuela
 
Zuletzt bearbeitet von einem Moderator:

Der Müde Joe

Top Contributor
schau dir mal

java.awt.datatransfer an
so ca:
Java:
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
Transferable t = clipboard.getContents(null);
if (t != null && t.isDataFlavorSupported(DataFlavor.imageFlavor)) {
image = (BufferedImage) t.getTransferData(DataFlavor.imageFlavor);
}
 

ARadauer

Top Contributor
joe, Ich denke wenn man im Explorer kopiert, wird eher die File Liste im Zwischenspeicher sein....

Java:
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import java.util.List;

import javax.imageio.ImageIO;

public class Test1 {

   public static void main(String[] args) throws UnsupportedFlavorException, IOException {

      Clipboard systemClipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
      Transferable transferData = systemClipboard.getContents(null);

      if (transferData.isDataFlavorSupported(DataFlavor.javaFileListFlavor)) {

         List<File> content = (List<File>) transferData.getTransferData(DataFlavor.javaFileListFlavor);
         for (File f : content) { // jetzt kannst du mit den Datein machen was
                                  // du willst

            BufferedImage img = ImageIO.read(f); // zb auch als bild lesen
            if (img != null) {
               System.out.println(f.getName() + " ist " + img.getWidth() + " px breit");
            } else {
               System.out.println(f.getName() + " ist kein bild");
            }
         }
      }else{
         System.out.println("kein Datein kopiert");
      }

   }
 

Der Müde Joe

Top Contributor
>joe, Ich denke wenn man im Explorer kopiert, wird eher die File Liste im Zwischenspeicher sein....

oh..ja...Hab den Code aus einem alten Applet kopiert..war für einen Kunden ein Pic-upload applet, das die User nicht immer ein print screen machen und dann ins word kopieren und dann hochladen....

Zu drag und drop kann ich auch nix sagen...aber onkel google weiss da sicher mehr...

EDIT:
onkel google erster treffer
How to drag and drop with Java 2, Part 1 - JavaWorld
 

Manuela

Aktives Mitglied
Hallo,
ich wollte nur sagen das es geht mit Drag and drop vom Explorer in mein Programm

ich habe das über
implements DropTargetListener, DragSourceListener, DragGestureListener

geregelt.

Java:
   public synchronized void drop(DropTargetDropEvent dtde) {
        try {
            Transferable tr = dtde.getTransferable();
            if (tr.isDataFlavorSupported(DataFlavor.javaFileListFlavor)) {
                dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
                Object o = tr.getTransferData(DataFlavor.javaFileListFlavor);
                char[] array = o.toString().toCharArray();
                String path = "";
                for (int i = 0; i < array.length - 1; i++) {
                    path = path + array[i];
                }
                      
               ... // alles was ich machen will ...
               
               Image bildist1 = new ImageIcon(ImageIO.read(new File(path.substring(1)))).getImage();
              
  dtde.getDropTargetContext().dropComplete(true);

            } else {
                System.out.print("Rejected");
                dtde.rejectDrop();
            }

Funktioniert ohne probleme.

Gruß Manuela
 

ARadauer

Top Contributor
Java:
Object o = tr.getTransferData(DataFlavor.javaFileListFlavor);
                char[] array = o.toString().toCharArray();
                String path = "";
                for (int i = 0; i < array.length - 1; i++) {
                    path = path + array[i];
                }

das, kann zwar klappen, bin mir aber nicht sicher ob das gut ist.
Kann es sein, das hier das toString von File wieder zusammen gebaut wird?
Schau mal mit dem Debugger was o für eine Klasse ist. Wenn das File ist würd ich einfach casten...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I 2D-Grafik Vektor-Grafik über die Zwischenablage nach Adobe Illustrator transferieren Allgemeine Java-Themen 8
M itext - Button der Text in Zwischenablage stellt Allgemeine Java-Themen 0
I Wie Vektor-Grafik in die Zwischenablage kopieren? Allgemeine Java-Themen 2
B In zwischenablage kopieren Allgemeine Java-Themen 2
C Überwachen der Zwischenablage, aber wie? Allgemeine Java-Themen 10
S Zwischenablage lesen und schreiben Allgemeine Java-Themen 2
Daniel_L RTF - Format aus Zwischenablage erkennen und "einlesen"? Allgemeine Java-Themen 5
G Text aus Zwischenablage in JTextarea -> JDBC Error Allgemeine Java-Themen 3
S Bild aus Zwischenablage in Applet einfügen Allgemeine Java-Themen 2
G String in die Zwischenablage schreiben Allgemeine Java-Themen 5
P Überwachung der System-Zwischenablage Allgemeine Java-Themen 2
N Struct oder Record? Und COPY in und aus Zwischenablage Allgemeine Java-Themen 2
M Bild in Zwischenablage kopieren? Allgemeine Java-Themen 7
A Windows Zwischenablage Allgemeine Java-Themen 2
L Grid und drag and drop Allgemeine Java-Themen 1
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
G Drag and Drop und trotzdem MouseEvents Allgemeine Java-Themen 3
G Datei per Drag and Drop auf den Link öffnen Allgemeine Java-Themen 6
S GUI - Drag & Drop Elemente Allgemeine Java-Themen 10
S Falsches Encoding bei Drag and Drop von Umlauten Allgemeine Java-Themen 16
L jTable drag & drop einzelner Zeilen Allgemeine Java-Themen 4
D [Drag&Drop] Design-Pattern-Frage Allgemeine Java-Themen 4
C Drag & Drop, Icons sollen getauscht werden Allgemeine Java-Themen 4
vladimir Welche API für Grafik und Drag&Drop Allgemeine Java-Themen 3
G Drag & Drop Allgemeine Java-Themen 6
M Drag and Drop FileListFlavor unter Ubuntu - Nautilus Allgemeine Java-Themen 5
M Drag and Drop: 3 Fragen Allgemeine Java-Themen 3
G Drag&Drop von Textdateien Allgemeine Java-Themen 13
G Datei Verknuepfung, drag&drop Plattformunabhaengig Allgemeine Java-Themen 3
T Drag und Drop von Applet 1 zu Applet 2 _in_ derselben VM Allgemeine Java-Themen 9
T JLable Drag und Drop Allgemeine Java-Themen 4
R Drag und Drop - Fehler während Laufzeit Allgemeine Java-Themen 14
R Drag und Drop von externen Files geht nur als Application Allgemeine Java-Themen 2
P drag und drop und move mit 2 Fenstern fkt. nicht 100 %ig Allgemeine Java-Themen 7
F Drag&Drop Allgemeine Java-Themen 10
M In JTables Drag und Drop verbieten Allgemeine Java-Themen 2
L Drag and Drop Table Allgemeine Java-Themen 9
U Drag & Drop Allgemeine Java-Themen 2
E Frage zu Drag and Drop Allgemeine Java-Themen 2
S Drag&Drop einer Datei, wie nur den Dateipfad erhalten? Allgemeine Java-Themen 9
G Drop down Button Menü (Combobox) Allgemeine Java-Themen 7
L Drop Emails von Outlook in eine JList Allgemeine Java-Themen 5
T Java Excel Drop Down Formularsteuerelement Allgemeine Java-Themen 0
R Drang and Drop: Tab bei Firefox Allgemeine Java-Themen 13

Ähnliche Java Themen

Neue Themen


Oben