2012-03-24 25 views
1

我一直在尋找一種方法來做到這一點。我發現一些代碼來改變在列表中字符串的順序,但我想添加的每個面板上的按鍵和這樣的,這樣是行不通的......有沒有一個java swing的佈局,讓我有一個可以通過拖放重新排序的面板列表?

+0

佈局和拖動和下降是兩個正交的概念。您需要找到允許您訂購組件的佈局,例如GridLayout,並且您需要分別實施拖放操作。 – 2012-03-24 18:22:46

回答

4

你可能想看看對接框架。例如,Docking Frames有棋盤的一個很好的例子 - 基本上,你可以在「停靠」在棋盤方格哪個服務器作爲放置目標件。只需通過提供的jnlp啓動演示,然後在左側列表中選擇Chess演示,以瞭解其工作原理。下面是它的一個screenshoot:

enter image description here

你可以看到,每個方格是一個對接瓦(即一個拖動對象)。

在你的情況,而不是方形的8×8,你可以有NX1模擬一列列表,而不是一個表。

+0

很感謝,我會檢查一下。 – arrow 2012-03-24 18:49:26

1

使用JList。查看dragging behavior的重新排序能力。

詳情請參閱How to Use Lists

+0

我試過使用JList,但據我所知,它只能用於字符串。 – arrow 2012-03-24 19:10:30

+1

這是錯誤的。在最近的帖子中,我使用了['Image'](http://stackoverflow.com/a/9544652/418556)和'Font'對象的列表。 – 2012-03-24 19:23:14

+2

在列表中使用自定義渲染器,並且可以顯示任何你想要的。 – 2012-03-24 20:02:28

相關問題