展开全部
你这个复杂了,我稍微说说吧。
进度条稍微简单点,你就去看看Oracle的tutorial就行了,记得运用科学(或32313133353236313431303231363533e78988e69d8331333363386166者不用?)
拖拽不是一下能写出来的,我随便拉了一个例子,你研究下:final class FileDropHandler extends TransferHandler {
@Override
public boolean canImport(TransferHandler.TransferSupport support) {
for (DataFlavor flavor : support.getDataFlavors()) {
if (flavor.isFlavorJavaFileListType()) {
return true;
}
}
return false;
}
@Override
@SuppressWarnings("unchecked")
public boolean importData(TransferHandler.TransferSupport support) {
if (!this.canImport(support))
return false;
List files;
try {
files = (List) support.getTransferable()
.getTransferData(DataFlavor.javaFileListFlavor);
} catch (UnsupportedFlavorException | IOException ex) {
// should never happen (or JDK is buggy)
return false;
}
for (File file: files) {
// do something...
}
return true;
}
}
用的时候:myComponent.setTransferHandler(new FileDropHandler());