gpt4 book ai didi

带有弹出对话框的 Java Swing 拖放

转载 作者:行者123 更新时间:2023-11-30 09:49:18 24 4
gpt4 key购买 nike

我希望在 Java Swing 应用程序中具有以下行为:

  1. 用户拖放一个图标。
  2. 如果还应操作其他图标,系统会通过模式对话框提示用户。
  3. 在用户选择"is"、“否”或“取消”(或关闭对话框)后,Java 开始操作(复制/移动)图标(或在“取消/关闭”时不执行任何操作)。

TransferHandler.canImport() 中,我可以看到放置目标,但看不到图标。

TransferHandler.exportDone() 中,我可以看到图标,但看不到放置目标。

TransferHandler.importData() 中我可以看到两者,但到那时为时已晚,因为如果我正在执行 TransferHandler.MOVE 然后 TransferHandler .exportDone() 已经删除了图标。

我上面提到的行为是否可以使用 Java Swing 实现?如果是这样,我需要使用什么版本的 JDK/JRE 以及如何实现它?

最佳答案

如果您希望能够拖放项目,以及以编程方式移动/复制它们,您需要确保您有一个适当的模型设置来支持< em>查看。这意味着您不应该将业务逻辑直接编码到 GUI 代码中。模型应该简单且独立,专注于管理数据的实际任务。在您的情况下,听起来您只需要保存一些对象集合并提供将对象从一个集合移动/复制到另一个集合的方法。执行此操作的代码称为 Controller (MVC - 如果您已经熟悉此模式,请原谅我)。然后 Controller 将更新 GUI 以反射(reflect)更改。同样,您的拖放操作将触发一个 Controller Action ,该 Action 对模型执行类似的 Action 。

关于带有弹出对话框的 Java Swing 拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5875312/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com