Tôi có một JList chứa ArrayList của các đối tượng tùy chỉnh và tôi đang cố tạo một kéo và thả vào các trường. Tôi gặp sự cố khi hiểu cách gói và nhận đối tượng trong Có thể chuyển.Kéo và thả đối tượng tùy chỉnh từ JList vào JLabel
này là về như xa như tôi đã nhận:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
public class FlightProjectInterface extends JFrame{
//create GUI Objects
private JFrame primaryFrame;
private JPanel createFlightPanel;
private JPanel aircraftLayout;
private JList personsJList, personsOnFlightJList;
private JTextField pilotLabel, coPilotLabel, backseat1Label, backseat2Label;
public FlightProjectInterface(){
//establish frame
super("Create Flight");
setLayout(new FlowLayout());
//aircraftPanel
aircraftLayout = new JPanel();
aircraftLayout.setLayout(new GridLayout(2,2));
pilotLabel = new JTextField("Drag Pilot Here");
//build person load list
DefaultListModel listModel = new DefaultListModel();
for (Person person : Database.persons)
listModel.addElement(person);
personsJList = new JList(listModel);
personsJList.setVisibleRowCount(5);
personsJList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
personsJList.setDragEnabled(true);
add(new JScrollPane(personsJList));
aircraftLayout.add(pilotLabel);
add(aircraftLayout);
}//end constructor
}
Làm rõ: Tôi đang gặp rắc rối lấy lựa chọn đối tượng từ JList và tạo ra một thể chuyển nhượng ra khỏi nó. Với đoạn mã trên, biểu diễn toString của đối tượng chỉ được dán vào trường văn bản, vì vậy tôi không thể kéo dữ liệu đối tượng từ vị trí bị bỏ. Làm thế nào tôi có thể "gói" các đối tượng chính nó và thả nó vào một giữ chỗ mà tôi có thể tham khảo các đối tượng chính nó từ GUI?
Lý tưởng nhất, sẽ có 4 trường mà mỗi trường chứa một đối tượng có thể bị xóa. Người đó sẽ bị xóa khỏi danh sách nếu họ bị bỏ, nhưng quay trở lại danh sách nếu được thay thế.
* "Tôi đang gặp khó khăn khi hiểu cách gói và nhận đối tượng trong Có thể chuyển nhượng." * Xem phần [Kéo và thả và truyền dữ liệu] (http://docs.oracle.com/javase/tutorial) /uiswing/dnd/index.html) và quay lại với chúng tôi khi bạn đã cố gắng và có thể đặt một câu hỏi cụ thể. –
Tôi đã đọc nó vài giờ rồi. Tôi đang gặp khó khăn khi lựa chọn đối tượng từ JList và tạo ra một chuyển đổi từ nó. Với đoạn mã trên, biểu diễn toString của đối tượng chỉ được dán vào trường văn bản, vì vậy tôi không thể lấy dữ liệu đối tượng từ vị trí bị bỏ. –
'không thể tìm thấy biểu tượng biểu tượng: biến Cơ sở dữ liệu vị trí: lớp FlightProjectInterface' - Để được trợ giúp tốt hơn sớm hơn, hãy đăng [SSCCE] (http://sscce.org/). –