Ho una JList contenente una lista di oggetti personalizzati e sto cercando di creare un trascinamento nei campi. Ho difficoltà a capire come confezionare e ricevere l'oggetto in Trasferibile.Trascina e rilascia oggetto personalizzato da JList a JLabel
Questo è quanto di quanto ho ottenuto:
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
}
Precisazione: Sto avendo difficoltà a prendere la selezione degli oggetti dal JList e creando un trasferibile fuori di esso. Con il codice sopra, la rappresentazione toString dell'oggetto viene semplicemente incollata nel campo di testo, quindi non sono in grado di estrarre i dati oggetto dalla posizione abbandonata. Come posso "impacchettare" l'oggetto stesso e rilasciarlo in un segnaposto che posso fare riferimento all'oggetto stesso dalla GUI?
Idealmente, ci sarebbero 4 campi che contengono ciascuno un oggetto che può essere eliminato. La persona verrebbe rimossa dalla lista se fosse stata rilasciata, ma sarebbe ritornata alla lista se fosse stata sostituita.
* "Sto avendo difficoltà a capire come pacchetto e ricevere l'oggetto in valori." * Vedere la [Drag and Drop e trasferimento dati] (http://docs.oracle.com/javase/tutorial /uiswing/dnd/index.html) e torna da noi quando hai fatto un tentativo e puoi fare una domanda specifica. –
L'ho letto da alcune ore. Ho difficoltà a prendere la selezione degli oggetti da JList e creare un trasferibile da esso. Con il codice sopra, la rappresentazione toString dell'oggetto viene semplicemente incollata nel campo di testo, quindi non sono in grado di catturare i dati oggetto dalla posizione abbandonata. –
'impossibile trovare il simbolo simbolo: variabile Database posizione: class FlightProjectInterface' - Per un aiuto migliore, pubblicare un [SSCCE] (http://sscce.org/). –