2009-12-20 60 views
0

我想创建一个Java桌面应用程序,其中包含桌面图标。该应用程序将是一个菜单/面板,在将光标悬停在屏幕顶部附近之前是不可见的,此时桌面图标的菜单将会下降。要将新图标添加到菜单,必须将图标从桌面拖到菜单中,然后将它们对齐网格。由于我是一名中级程序员,但我从未使用过任何语言编写GUI应用程序,所以我想知道是否有人可以帮助我解决问题,以及如何解决问题以及我应该使用的包和方法。另外,我正在考虑使用NetBeans来做这件事,除非您有任何其他建议。如何创建一个下拉菜单桌面上的Java应用程序来保存桌面图标(Java)

感谢, 安德鲁

回答

1

作为Chad's选项的替代方法,您也可以通过创建框架并使用Java的transparent window capability使框架透明(或半透明,如果您想要提示它存在)并使用鼠标进入/退出事件将框架恢复到正常的“固体”不透明状态。

就我个人而言,我会尝试这种解决方案,因为我宁愿使用基于事件的通知而不是轮询鼠标位置,但我期望它比其他替代方案更有效。对于拖放,我没有在Java中广泛使用它以提供任何解决方案,但它并不直接显示(从粗略的因特网搜索)如何处理本地桌面拖放操作。我建议从应用程序中的dnd tutorials开始,以便您真正理解Java的拖放API和功能。

+0

+1用于避免鼠标位置轮询。 – tangens 2009-12-20 10:25:31

0

您可以使用java.awt.MouseInfo在任何时间点来获得鼠标的位置,即使你没有打开的任何窗口。

所以,你可以启动一个java程序,然后在你的主循环中轮询鼠标位置。如果它在'顶部',那么你可以打开一个窗口。

您可以使用最简单的方法使用JButtonsJLabels以及图像来表示桌面图标。只需加载你想使用的图像,并将其作为标签粘贴。

我会先通过swing tutorial开始,编写一些简单的GUI程序来获取它的挂起。

但MouseInfo的东西是你需要告诉当鼠标在屏幕的顶部。