演示-BasicDnD

现在,我们看一个名为BasicDnD的简单演示,该演示向您显示免费提供的内容。从屏幕快照中可以看到,BasicDnD 包含一个表,一个列表,一棵树,一个颜色 selectors,一个文本区域和一个文本字段。

所有这些组件都是标准的现成组件,列表除外。该列表已被自定义,以弹出一个对话框,显示如果接受了丢弃,丢弃将在何处发生。

以下区域接受液滴:

  • Text field

  • Text area

  • 颜色 selectors 接受颜色类型的墨滴,但是要try此操作,您需要运行该演示的两个副本(或另一个包含颜色 selectors 的演示)

默认情况下,所有对象均未启用默认拖放功能。在启动时,您可以选中“打开拖放”复选框以查看免费获得的拖放行为。

此数字已减少至适合页面大小。
单击图像以其自然尺寸查看.

Try this:

  • 单击启动按钮以使用Java™Web 开始(下载 JDK 7 或更高版本)运行 BasicDnD。另外,要自己编译和运行示例,请查阅example index

  • 在列表中选择一个项目,然后在按住鼠标按钮的同时开始拖动。什么都没有发生,因为尚未在列表上启用拖动。

  • 选中“打开拖放”复选框。

  • 按列表中的选定项目并开始拖动。将文本放回列表中。对话框显示如果实际接受的列表下降,文本将出现的位置。 (列表的默认行为是显示“不接受数据”光标.)

  • 将选定的文本拖到文本区域上。文本的插入点由闪烁的插入号指示。此外,光标会更改以指示文本区域将接受文本作为副本。

  • 释放鼠标,观察文本出现在文本区域中。

  • 在一个文本区域中选择一些文本。

  • 当光标位于所选文本上方时,按鼠标按钮并开始拖动。

  • 请注意,这一次将出现用于拖动动作的光标。成功将此文本放到另一个组件中将导致该文本从原始组件中删除。

  • 按住 Control 键,然后再次按选定的文本。开始拖动,复制光标现在出现。将光标移到文本区域上并放下。文本显示在新位置,但不会从原始位置删除。 Ctrl 键可用于更改任何“移动到副本”。

  • 从颜色 selectors 中选择一种颜色。所选颜色出现在“预览”面板中。在“预览”面板中的颜色上按住鼠标按钮,然后将其拖动到其他组件上。请注意,这些组件都不接受颜色。

  • try将文本,颜色甚至文件拖放到列表中。对话框将报告try的操作。可以使用在BasicDnD.java源文件中已 注解 掉的其他六行代码来实现实际的删除。

接下来,我们将讨论TransferHandler类,它是拖放机制的主力。