Java教程是针对JDK 8编写的。本页中描述的示例和实践不利用后续版本引入的改进,并可能使用不再可用的技术。
有关Java SE 9和后续版本中更新的语言功能的摘要,请参阅Java语言更改。
有关所有JDK版本的新功能、增强功能以及已删除或弃用选项的信息,请参阅JDK发行说明。
现在我们将看一下用于将数据导入组件的方法。当组件是操作的目标时,这些方法将被调用以进行拖放手势或粘贴操作。用于导入数据的TransferHandler
方法有:
canImport(TransferHandler.TransferSupport)
— 在拖放手势期间会反复调用此方法,如果光标下方的区域可以接受传输,则返回true;否则返回false。例如,如果用户将颜色拖动到只接受文本的组件上,该组件的TransferHandler
的canImport
方法应返回false。
importData(TransferHandler.TransferSupport)
— 在成功拖放(或粘贴)后调用此方法,启动将数据传输到目标组件。如果导入成功,则返回true;否则返回false。
这些方法替换了不使用TransferSupport
类的旧版本。与其替代方法不同,canImport(JComponent, DataFlavor[])
不会被连续调用。
您将注意到这些导入方法接受一个TransferHandler.TransferSupport
参数。接下来我们将查看TransferSupport
类,以及一些示例导入方法。