ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
5207
5207
EMPFEHLEN
-
Hallo alle zusammen,
Also, ich habe noch nie ein Forum aktiv genuzt. Also ist das meine Premiere
Ich suche eine Möglichkeit um eine Datei von meinem Desktop in ein Java Programm zu ziehen.
Eine Bitte, ich habe mich mit der Suche in diesem Forum auseinandergesetzt, und ich weiß auch was google ist, beides hat mich aber nicht weiter gebracht. Sollte ich also zu dumm zum suchen sein, bitte einen Link mit reinstellen.
Danke im vorraus
-
Hallo,
du hast dich wahrscheinlich nicht richtig mit der Suche im Forum auseinander gesetzt.
Bei dem Suchbegriff "drag drop" findet man ne ganze Menge. Unter anderem eine sehr alter Beitrag von mir. Ich wollte damals auch sowas machen und wusste nicht wie.
Hier findest du mal ein Beispiel
http://www.tutorials.de/forum/java/2...ag-n-drop.html
und hier hast du noch ein paar Informationen
http://www.tutorials.de/forum/swing-...drag-drop.html
MFG
zEriX
-
Oh ich kan gegenargumentieren, ich habe diesen artikel gefunden. Und mich auch über ein Beispiel gefreut, denn aus denen lernt man ja am meisten. Aber leider Funktionierte es nicht. Es wurde zwar das Fenster angezeit, und man konnte auch Dateien "raufziehen", aber nicht passierte.
Ich werde mich heute aber nochmal intensiver mit damit auseinandersetzen.
<zusatz>
Doch es geht, aber nur unter Windows, was mir leider nicht weiter hilft. Hat jemand eine Idee für die Betriebsystemübergreifende umsetzung
</zusatz>Geändert von Busi (03.05.07 um 11:19 Uhr)
-
Hallo,
du kannst diese Version umschreiben, dass sie unter Linux funktioniert. Mir ist leider keine Möglichkeit bekannt, wie es in Linux und Windows funktioniert.
MFG
zEriX
-
Nach langen suchen habe ich was gefunden.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
import java.awt.BorderLayout; import java.awt.Color; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.Transferable; import java.awt.dnd.DnDConstants; import java.awt.dnd.DropTarget; import java.awt.dnd.DropTargetDragEvent; import java.awt.dnd.DropTargetDropEvent; import java.awt.dnd.DropTargetEvent; import java.awt.dnd.DropTargetListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.io.InputStream; import java.io.InputStreamReader; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JTextArea; import javax.swing.JWindow; public class TestGrafik extends JWindow implements DropTargetListener { public JTextArea ta = new JTextArea();; private String file = null; public String getFile(){return file;} public JWindow jw = this; public void setFile(String file){this.file = file;} public TestGrafik() { setSize(300,300); getContentPane().add(ta, BorderLayout.CENTER); DropTarget dt = new DropTarget(ta, this); setVisible(true); } public void dragEnter(DropTargetDragEvent dtde) {} public void dragExit(DropTargetEvent dte) {} public void dragOver(DropTargetDragEvent dtde) {} public void dropActionChanged(DropTargetDragEvent dtde) {} public void drop(DropTargetDropEvent dtde) { try { Transferable tr = dtde.getTransferable(); DataFlavor[] flavors = tr.getTransferDataFlavors(); for (int i = 0; i < flavors.length; i++) { if (flavors[i].isFlavorJavaFileListType()) { dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE); setFile(((java.util.List)tr.getTransferData(flavors[i])).get(0).toString()); dtde.dropComplete(true); return; } else if (flavors[i].isRepresentationClassInputStream()) { dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE); ta.read(new InputStreamReader((InputStream)tr.getTransferData(flavors[i])),"from system clipboard"); dtde.dropComplete(true); setFile(ta.getText().trim()); ta.setText(null); System.out.println(getFile()); return; } } System.out.println("Drop failed: " + dtde); dtde.rejectDrop(); } catch (Exception e) { e.printStackTrace(); dtde.rejectDrop(); } } public static void main(String args[]) { new TestGrafik(); } }
mit getFile bekommt man den Pfad mit Datei zurückGeändert von Busi (04.05.07 um 14:54 Uhr)
-
Vom Desktop in ein Java-Prog funktioniert ja recht gut, aber wie geht der umgekehrte Weg:
Ich will eine Datei aus meinem Java-Prog auf den Desktop ziehen: das einzige, was ich habe, ist der Dateiname, Endung und Bytestream..
ich kriegs einfach nicht gebacken...
Ähnliche Themen
-
Drag n Drop
Von kerstel im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 21.01.10, 13:36 -
Drag & Drop
Von muga im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 03.08.09, 17:42 -
SWT Drag&Drop
Von HuberDe im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 27.09.07, 08:15 -
Drag & Drop mit <tr> ?!
Von ev0lst im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 12.08.07, 10:23 -
SWT: Ghosted Drag-Image bei Drag & Drop
Von snake_plissken im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 15.04.06, 23:36





Zitieren

Login





