Now we will look at the methods used for importing data into a component. These methods are invoked for the drop gesture, or the paste action, when the component is the target of the operation. TheTransferHandler
methods for importing data are:
canImport(TransferHandler.TransferSupport)
— This method is called repeatedly during a drag gesture and returns true if the area below the cursor can accept the transfer, or false if the transfer will be rejected. For example, if a user drags a color over a component that accepts only text, thecanImport
method for that component'sTransferHandler
should return false.
importData(TransferHandler.TransferSupport)
— This method is called on a successful drop (or paste) and initiates the transfer of data to the target component. This method returns true if the import was successful and false otherwise.
Version note: These methods replace older versions that do not use theTransferSupport
class, introduced in JDK 6. Unlike its replacement method,canImport(JComponent, DataFlavor[])
is not called continuously.You will notice that these import methods take a
TransferHandler.TransferSupport
argument. Next we look at theTransferSupport
class and then some sample import methods.