【发布时间】:2017-10-04 05:20:44
【问题描述】:
我正在使用我找到的以下代码(来自 ABika 的How can I use Drag-and-Drop in Swing to get file path?)进行拖放:
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<File> files;
try {
files = (List<File>) 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;
}
}
然后将处理程序添加到组件中。
但问题是,尽管有“@SuppressWarnings("unchecked")”,但我收到了一个错误:
List 类型不是泛型的;它不能用参数
参数化
谁能告诉我这里出了什么问题?这似乎很直接。 谢谢
【问题讨论】:
-
无法复制。也许您还有另一个名为 List 的类?
-
请添加您的导入。我假设您拥有的课程
List不是来自java.util
标签: java swing drag-and-drop suppress-warnings