Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Associare un evento ad una JList

    Ciao a tutti......

    ho creato una finestra con un JSplitPane.....nel pannello a sx ho inserito una Jlist di miniature di una serie di immagini jpg....mentre nel pannello a dx voglio inserire l'ingrandimento (l'mmagine oiginale) di quella selezionata nella lista....quindi associare un evento (sto provando un MouseEvent) ad ogni elemento della JList.......
    aiuto....

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Hai provato ad aggiungere un ListSelectionListener?
    E' un Listener che ti permette di controllare lo stato della selezione nella JList ad ogni cambiamento.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3

    Aiuto....

    Ho aggiunto questo pezzo di codice per controllare il click sulle immagini appartenenti alla lista:


    final File dir = new File("JPG"); //directory con le immagini jpg
    MouseListener mouseListener = new MouseAdapter() {
    public void mouseClicked(MouseEvent e) {
    if (e.getClickCount()==1) {
    int index = listaIcone.locationToIndex(e.getPoint());
    ImageIcon app=new ImageIcon(dir+arrayPercorsi[index]);
    System.out.println("G:/Francesco/Projects/Finestra/JPG/" + arrayPercorsi[index]);
    JLabel Anteprima=new JLabel(app);
    Anteprima.setHorizontalAlignment (SwingConstants.CENTER);


    }
    }
    };

    In listaIcone ho salvato le miniature di tutte le immagini,mentre Anteprima è il JLabel di dx dove va visualizzata l'ingrandimento dell'immagine selezionata nella JList inserita nel pannello di sx..
    Non capisco perchè quando seleziono l'immagine, l'ingrandimento non viene visualizzato...anche se il percorso che faccio stampare con la System.out...... è corretto!!!
    Aiuto!!

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Non viene visualizzato perchè tu crei un nuovo oggetto JLabel invece di usare quello preesistente. Oltretutto questo nuovo componente non lo aggiungi nemmeno al Container.

    Seconda cosa, sarebbe più auspicabile utilizzare un ListSelectionListener (come ti avevo già proposto sopra), altrimenti se il tuo utente sposta la selezione con le freccette della tastiera non succederà nulla.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.