我遇到一些問題,我只是無法弄清楚...... 我正在用可接受拖放操作的JList編寫Swing Java應用程序。我想在通過Java應用程序從系統中拖動文件或文件夾的同時更改光標。如何在放入Java應用程序時更改光標
3
A
回答
4
我自己找到了......感謝克林頓的回答。下面是我用什麼:
首先創建JList的......大家都知道該怎麼做...... 然後我添加了一個的setDropTarget:
lstFiles.setDropTarget(new DropTarget()
{
@Override
public synchronized void drop(DropTargetDropEvent dtde)
{
this.changeToNormal();
//handle the drop... [...]
}
@Override
public synchronized void dragEnter(DropTargetDragEvent dtde)
{
//Change cursor...
Cursor cursor = new Cursor(Cursor.HAND_CURSOR);
setCursor(cursor);
//Change JList background...
lstFiles.setBackground(Color.LIGHT_GRAY);
}
@Override
public synchronized void dragExit(DropTargetEvent dtde)
{
this.changeToNormal();
}
private void changeToNormal()
{
//Set cursor to default.
Cursor cursor = new Cursor(Cursor.DEFAULT_CURSOR);
setCursor(cursor);
//Set background to normal...
lstFiles.setBackground(Color.WHITE);
}
});
1
以下只會在用戶將鼠標移動到JList上時更改光標。
通過使用mouse listener和setCursor方法將鼠標懸停在某個組件(即您的JList)上時,可以更改光標。
本質上只需將鼠標監聽器添加到JList中,並在用戶將鼠標放在應用程序中的組件(mouseEntered和mouseExit)上時使用setCursor更改光標。您可能還需要對拖放代碼進行一些查詢,以便在某些有效內容被拖入JList時更改光標。
希望這會有所幫助。
相關問題
- 1. 如何在Java應用程序的菜單項操作期間更改光標
- 2. 更改光標以等待整個應用程序的光標
- 3. 如何在拖放過程中更改鼠標光標?
- 4. 在應用程序中更改鼠標光標圖像?
- 5. Java更改光標
- 6. 如何使用Zedgraph庫在C#應用程序中更改鼠標光標?
- 7. 如何在鼠標懸停放置目標時更改拖放光標
- 8. 刪除/更改拖放時的光標
- 9. 如何在拖放時更改光標旁邊的元素?
- 10. 如何更改應用程序圖標?
- 11. 在應用程序級別更改光標
- 12. 在Windows應用程序商店中更改光標
- 13. 如何更改整個WPF應用程序的默認鼠標光標?
- 14. 如何更改光標中的排序
- 15. 更改光標在OSX應用
- 16. 在JavaFX應用程序中更改光標以進行長時間操作
- 17. 如何更改Inno安裝程序中的鼠標光標?
- 18. 如何更改光標
- 19. 更改Pygtk應用程序中的光標類型
- 20. 如何在java中更改鼠標光標?
- 21. 如何在鼠標左鍵關閉時更改鼠標光標?
- 22. 「應用程序圖標」等應用程序如何在跳板上更改應用程序圖標?
- 23. 如何在系統托盤中放入Java應用程序?
- 24. 更改光標線程
- 25. 拖動時更改光標
- 26. 更改光標時UI忙
- 27. 如何更改鼠標光標圖標?
- 28. 如何更改程序文件中的應用程序圖標?
- 29. 在拖放過程中在JavaFx ListView中更改光標
- 30. 應用程序圖標更新後不更改應用程序
啊哈!幹得不錯! – Clinton