2010-05-26 46 views
0

我有水平的JList。當用戶拖拽這個列表的元素時,會有指示符在哪裏被拖拽的元素會被放置。但是這個指標是水平的,出現在名單的上方或下方。那我該如何改變它?我希望它是垂直的。如何更改JList的目標指標

代碼創建列表:

DefaultListModel model = new DefaultListModel(); 
// I fill up model with data from DB 

list = new JList(model); 
list.setName(rs.getString(1)); 
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 

// Next to rows make JList horizontal 
list.setLayoutOrientation(JList.VERTICAL_WRAP); 
list.setVisibleRowCount(1); 

// Add d'n'd 
list.setTransferHandler(listHandler); 
list.setDragEnabled(true); 
list.setDropMode(DropMode.INSERT); 
+1

也許你能告訴我們你現在的源代碼,以便我們可以在您所描述的問題推斷。一些截圖可能也有幫助,因爲你的問題,正如你描述的那樣,不是很清楚... – jfpoilpret 2010-05-26 14:28:08

+0

我添加了源代碼。現在無法添加屏幕截圖。 – Shulya 2010-05-26 16:57:53

回答

1

水平線是通常的圖形元素,如果你想插入一行到列表(或表)。我不會改變它,堅持公約。

如果它是垂直的 - 你究竟在哪裏?在列表條目的開頭?但是,如果在「標記」行之前或之後插入被丟棄的元素,則不太清楚。

+0

我有水平列表。這是一行元素。我將元素向左或向右移動(而不是向上或向下)。所以垂直線會顯示拖動元素的位置。 – Shulya 2010-05-26 14:31:30

+0

感謝您的澄清!我對JList的經驗相當有限,但我擔心你需要一個不同的數據容器,這些容器可以水平調整大小。 – 2010-05-26 14:38:33