2009-12-20 106 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的東西是你需要告訴當鼠標在屏幕的頂部。