コメント
サイト運営のための寄付
作成者: 白鷹2
ページ番号: 1228093883_1237113048
作成日: 2009-03-15
修正日: 2009-03-15
ドラッグ ドロップ処理
ドラッグ アンド ドロップ処理
アプリケーションに、エクスプローラなどから、ファイルをドロップする場合、Windowsとubuntu(Linux)では、処理が異なります。

new DropTarget(mainPanel, new MyDropTargetAdapter());
...

private class MyDropTargetAdapter extends DropTargetAdapter {
public void drop(DropTargetDropEvent e) {
try {
Transferable transfer = e.getTransferable();
if (transfer.isDataFlavorSupported(DataFlavor.javaFileListFlavor)) {
// Windows
e.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
java.util.List fileList =
(java.util.List) (transfer.getTransferData(DataFlavor.javaFileListFlavor));
if (fileList.size() > 0) {
File currentFile = (File) fileList.get(0);
if (currentFile.isFile()) {
....
}
}
}else if(transfer.isDataFlavorSupported(DataFlavor.stringFlavor)){
// Linux
if(e.isLocalTransfer() ){
}else{
e.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
String str = (String) transfer.getTransferData(DataFlavor.stringFlavor);
String lineSep = System.getProperty("line.separator");
String[] fileList = str.split(lineSep);
if(fileList.length > 0){
URI fileURI = new URI(fileList[0].replaceAll("[\r\n]", ""));
File currentFile = new File(fileURI);
if (currentFile.isFile()) {
...
}
}
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}



Windowsでは、ファイルリストとして渡されますが、ubuntuでは、文字列として渡されます。
©2008-2009 PostTips All Rights Reserved.
新規ページの作成
タイトル:
要約
新規画像の登録
タイトル:
画像ファイルの指定
タイトルの修正
画像タイトルの修正
要約の修正
コメントの書き込み
コメント: