simosdimos Δημοσ. 9 Μαΐου 2015 Δημοσ. 9 Μαΐου 2015 Θα ήθελα όπως στην εικόνα, να διπλοκλικάρω πχ το U2 από τη λίστα Φίλοι, και να λειτουργεί σαν να έχω κλικάρει το U2 από την αριστερή λίστα. Σας γράφω τον κώδικα του πάνελ όπως το έχω μέχρι στιγμής. Java Beginner! package userinterface;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.event.MouseEvent;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JList;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.event.ListSelectionEvent;import javax.swing.event.ListSelectionListener;import social.SocialNetwork;import social.User;public class SocialNetworkWindow extends JFrame implements ListSelectionListener { SocialNetwork network; JList userlist; JTextField txtUser; JList lstFriends; public SocialNetworkWindow(SocialNetwork sn){ setTitle("Κοινωνικό Δίκτυο"); network = sn; JLabel userLabel; JLabel friendsLabel; JPanel userPanel; userLabel = new JLabel("Όνομα:"); userLabel.setBounds(10,10,100,20); txtUser = new JTextField(); txtUser.setBounds(80,10,100,20); txtUser.setEditable(false); friendsLabel = new JLabel("Φίλοι:"); friendsLabel.setBounds(10,40,100,20); lstFriends = new JList(); lstFriends.setBounds(80,40,150,80); //To Panel userPanel = new JPanel(); userPanel.setLayout(null); userPanel.add(userLabel); userPanel.add(txtUser); userPanel.add(friendsLabel); userPanel.add(lstFriends); userPanel.setPreferredSize(new Dimension (300,200)); add(userPanel, BorderLayout.CENTER); userlist = new JList (network.getUsers()); userlist.addListSelectionListener(this); add(userlist, BorderLayout.LINE_START); pack(); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } @Override public void valueChanged(ListSelectionEvent lse) { int index = userlist.getSelectedIndex(); // !!! User user = network.getUsers().elementAt(index); txtUser.setText(user.getName()); lstFriends.setListData(user.getFriends()); }}
ALLisCHAOS Δημοσ. 11 Μαΐου 2015 Δημοσ. 11 Μαΐου 2015 (επεξεργασμένο) public void mouseClicked(MouseEvent event) { if (event.getClickCount() == 2) { onomaLabel.setOpaque(true); onomaLabel.setBackground(Color.Blue); } } Kάτι τέτοιο θες, προσαρμοσέτο στη περίπτωσή σου. επειδή είναι 4 το χάραμα, δεν έχεις βάλει και το κώδικα σε tags δεν έχω το κουράγιο για περισσότερη βοήθεια Επεξ/σία 11 Μαΐου 2015 από ALLisCHAOS
simosdimos Δημοσ. 27 Μαΐου 2015 Μέλος Δημοσ. 27 Μαΐου 2015 Σε ευχαριστώ φίλε μου, επειδή όπως προείπα είμαι νέος τι εννοείς ότι σχετικά με τη χρηση tags?
simosdimos Δημοσ. 27 Μαΐου 2015 Μέλος Δημοσ. 27 Μαΐου 2015 Ακριβώς κάτω από τον κώδικα του 1ου post,συμπλήρωσα αυτο public void mouseClicked(MouseEvent event){ if (event.getClickCount()==2){ int index = lstFriends.getSelectedIndex(); User user = network.getUsers().elementAt(index); txtUser.setText(user.getName()); lstFriends.setListData(user.getFriends()); } } No errors!!! Aλλά δεν δουλεύει...
ALLisCHAOS Δημοσ. 31 Μαΐου 2015 Δημοσ. 31 Μαΐου 2015 Πες μας αν θες που ήταν το πρόβλημα και τη λύση μήπως εξυπηρετήσει και άλλους στο μέλλον. Όσο για τα tags που σου είπα εννοώ την επιλογή του code που σου δίνει το forum(είναι το εικοιδιο <>) για να είναι πιο ευανάγνωστος ο κώδικας
simosdimos Δημοσ. 6 Ιουνίου 2015 Μέλος Δημοσ. 6 Ιουνίου 2015 Η λύση είναι η εξής // Double Click Task @Override public void mouseClicked(MouseEvent event){ if (event.getClickCount()==2){ int index = lstFriends.getSelectedIndex(); currentUser = currentUser.getFriends().elementAt(index); dateUser.setText(currentUser.getDate()); txtUser.setText(currentUser.getName()); lstFriends.setListData(currentUser.getFriends()); } }
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα