展开全部
你这个复杂了,我稍微说说吧。
进度条稍微简单点,你就去看看Oracle的tutorial就行了,记得运用科学(或32313133353236313431303231363533e78988e69d8331333363386166者不用?)
拖拽不是一下能写出来的,我随便拉了一个例子,你研究下:finalclassFileDropHandlerextendsTransferHandler{
@Override
publicbooleancanImport(TransferHandler.TransferSupportsupport){
for(DataFlavorflavor:support.getDataFlavors()){
if(flavor.isFlavorJavaFileListType()){
returntrue;
}
}
returnfalse;
}
@Override
@SuppressWarnings("unchecked")
publicbooleanimportData(TransferHandler.TransferSupportsupport){
if(!this.canImport(support))
returnfalse;
Listfiles;
try{
files=(List)support.getTransferable()
.getTransferData(DataFlavor.javaFileListFlavor);
}catch(UnsupportedFlavorException|IOExceptionex){
//shouldneverhappen(orJDKisbuggy)
returnfalse;
}
for(Filefile:files){
//dosomething...
}
returntrue;
}
}
用的时候:myComponent.setTransferHandler(newFileDropHandler());