java swing GUI.允许用户重新排列按钮



许多程序允许自由地重新排列gui上的按钮。例如,Firefox和Chrome都有"自定义"选项。如何在Java中做到这一点?当然,我可以将GUI约束带到设置文件中,让用户编辑它,但这对用户不友好。有更好的方法吗?

如何在Java中做到这一点?

没有内置的支持,所以你需要自己提供。

  1. 您可以从配置对话框开始。它可以按照您希望按钮显示的顺序显示一个JList,其中包含所有按钮的文本
  2. 然后,用户可以将列表中的每个项目拖动到新位置
  3. 当用户完成后,他们会单击"保存",您会将订单存储在用户属性文件中
  4. 然后,您将遍历列表,并更改面板上每个按钮的顺序
  5. 每次启动应用程序时,都需要读取用户属性文件并执行步骤4

查看有关拖放的Swing教程中的Drop Demo Project。它将向您展示如何实现JList,以便将项目拖动到新位置。

所以基本上你需要自己写代码。

您可以尝试创建一个在Chrome等中找到的首选菜单。这将提供一种熟悉且用户友好的方法。如果您想更改图标或大小,也可以继续使用。

另一种方法是允许按钮在容器中拖动和调整大小,并使用基于鼠标移动的事件对有问题的按钮进行重新排序。

最新更新