Mam JList zawierający ArrayList niestandardowych obiektów i próbuję utworzyć przeciągnij i upuść na pola. Mam problem ze zrozumieniem, jak spakować i odebrać obiekt w opcji Transferable.Przeciągnij i upuść niestandardowy obiekt z JList do JLabel
Jest to o ile stałam:
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
}
Wyjaśnienie: Mam problemy Biorąc wybór obiektu z JList i tworząc Transferable z niego. Z powyższym kodem, reprezentacja obiektu toString jest po prostu wklejana w polu tekstowym, więc nie jestem w stanie pobrać danych obiektu ze zrzuconej lokalizacji. Jak mogę "spakować" sam obiekt i umieścić go w symbolu zastępczym, który mogę odnieść do samego obiektu z GUI?
Idealnie byłoby 4 pola, z których każdy zawiera obiekt, który można upuścić. Osoba zostanie usunięta z listy, jeśli zostanie upuszczona, ale zwrócona do listy po jej zastąpieniu.
* "Mam problem ze zrozumieniem, jak spakować i odebrać obiekt w Zbywalnych." * Zobacz [Przeciągnij i upuść oraz Transfer danych] (http://docs.oracle.com/javase/tutorial /uiswing/dnd/index.html) i wróć do nas, gdy podjąłeś próbę i możesz zadać konkretne pytanie. –
Czytam to od kilku godzin. Mam problem z wyborem obiektu z listy JList i utworzeniem z niego możliwości przeniesienia. Z powyższym kodem, reprezentacja obiektu toString jest po prostu wklejana w polu tekstowym, więc nie jestem w stanie pobrać danych obiektu z upuszczonej lokalizacji. –
'nie można znaleźć symbol symbol: zmienna Baza danych lokalizacja: klasa FlightProjectInterface' - Aby uzyskać lepszą pomoc wcześniej, opublikuj [SSCCE] (http://sscce.org/). –