Oppure

Loading
25/10/10 13:18
killer
salve ragazzi..ho testato il drag and drop cerkando di trasferire dal O.S. una immagine ed inserirla in una jlabel ma non riesco neanche a prelevare la path del file ricevuto cosa sbaglio ?
a me interessa trasferire solo 1a immagine per volta non molte contemporaneamente.. quindi come potrei aggirare il problema ? non mi funziona.


public void drop(DropTargetDropEvent dtde) {
Transferable obj = dtde.getTransferable();
DataFlavor[] data = obj.getTransferDataFlavors();
for (int i = 0; i < data.length; i++) {
if (data[i].isFlavorRemoteObjectType()) {
dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
try {
File f = (File) obj.getTransferData(data[i]);
System.out.println("Percorso file: " + f.getAbsolutePath());
} catch (Exception e) {
}
}
}
}

mi entra sempre in exception...come mai ? non riesco a recuperare un file qualsiasi.
fatemi sapere presto.grazie
Ultima modifica effettuata da killer 25/10/10 14:32
aaa
25/10/10 14:20
GuglielmoS
Postato originariamente da killer:

salve ragazzi..ho testato il drag and drop cerkando di trasferire dal O.S. una immagine ed inserirla in una jlabel ma non riesco neanche a prelevare la path del file ricevuto cosa sbaglio ?
a me interessa trasferire solo 1a immagine per volta non molte contemporaneamente.. quindi come potrei aggirare il problema ? non mi funziona.


public void drop(DropTargetDropEvent dtde) {
Transferable obj = dtde.getTransferable();
DataFlavor[] data = obj.getTransferDataFlavors();
for (int i = 0; i < data.length; i++) {
if (data[i].isFlavorRemoteObjectType()) {
dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
try {
File f = (File) obj.getTransferData(data[i]);
System.out.println("Percorso file: " + list.getAbsolutePath());
} catch (Exception e) {
}
}
}
}

mi entra sempre in exception...come mai ? non riesco a recuperare un file qualsiasi.
fatemi sapere presto.grazie

Non conosco il drag and drop di java, però quando stampi il percorso mi sembra sia sbagliata la variabile da cui prelevare l'indirizzo del file.
Infatti credo sia questo quello che tu voglia fare:
                    File f = (File) obj.getTransferData(data[i]);
                    System.out.println("Percorso file: " + f.getAbsolutePath()); // non list ma f

Spero di aver capito quello che intendi.
Ciao GuglielmoS
aaa
25/10/10 14:31
killer
provato non funziona... se inserisco List<File> funziona se inserisco solo File f non funziona come mai ? :(
aaa