Torna indietro   Hardware Upgrade Forum > Software > Programmazione

AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS è il principale operatore di servizi cloud al mondo e da tempo parla delle misure che mette in atto per garantire una maggiore sovranità alle organizzazioni europee. L'azienda ha ora lanciato AWS European Sovereign Cloud, una soluzione specificamente progettata per essere separata e distinta dal cloud "normale" e offrire maggiori tutele e garanzie di sovranità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-11-2008, 21:45   #1
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
[Java] JList e update...

Salve a tutti,
mi sto scontrando con un problema sicuramente banale...
ho una jList Swing da popolare dinamicamente da una "OpenFileDialog" di
selezione oggetti.
Devo prendere il percorso del file selezionato nella OFD ed inserirlo nella
jList.
Il codice che uso è il seguente:

public void Click() {
OpenFileDialog g = new OpenFileDialog();
String file = new String();
file = g.getFilePath();
DefaultListModel a = new DefaultListModel();
if (g.isFileSelected()){
a.addElement(file);
}
jList1.setModel(a);
}

In questa maniera ottengo l'inserimento di un solo elemento alla volta, io
avrei bisogno di aggiungerne più di uno nella lista...
Come posso fare?

Grazie mille.
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2008, 17:20   #2
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da matt_jok3r Guarda i messaggi
Salve a tutti,
mi sto scontrando con un problema sicuramente banale...
ho una jList Swing da popolare dinamicamente da una "OpenFileDialog" di
selezione oggetti.
Devo prendere il percorso del file selezionato nella OFD ed inserirlo nella
jList.
Il codice che uso è il seguente:

public void Click() {
OpenFileDialog g = new OpenFileDialog();
String file = new String();
file = g.getFilePath();
DefaultListModel a = new DefaultListModel();
if (g.isFileSelected()){
a.addElement(file);
}
jList1.setModel(a);
}

In questa maniera ottengo l'inserimento di un solo elemento alla volta, io
avrei bisogno di aggiungerne più di uno nella lista...
Come posso fare?

Grazie mille.
Tutte le volte, crei un modello contenente un solo elemento.
Usa lo stesso modello:
Codice:
    DefaultListModel a = (DefaultListModel)jList1.getModel();
a questo punto, non ti serve piu' la setModel().
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2008, 19:05   #3
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
Utilizzando
Codice:
DefaultListModel a = (DefaultListModel)jList1.getModel();
al posto di
Codice:
DefaultListModel a = new DefaultListModel();
ottengo
Codice:
Exception in thread "AWT-EventQueue-0" java.lang.Error: java.lang.reflect.InvocationTargetException
        at org.jdesktop.application.ApplicationAction.actionFailed(ApplicationAction.java:859)
        at org.jdesktop.application.ApplicationAction.noProxyActionPerformed(ApplicationAction.java:665)
        at org.jdesktop.application.ApplicationAction.actionPerformed(ApplicationAction.java:698)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
        at java.awt.Component.processMouseEvent(Component.java:6134)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
        at java.awt.Component.processEvent(Component.java:5899)
        at java.awt.Container.processEvent(Container.java:2023)
        at java.awt.Component.dispatchEventImpl(Component.java:4501)
        at java.awt.Container.dispatchEventImpl(Container.java:2081)
        at java.awt.Component.dispatchEvent(Component.java:4331)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4301)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3965)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3895)
        at java.awt.Container.dispatchEventImpl(Container.java:2067)
        at java.awt.Window.dispatchEventImpl(Window.java:2458)
        at java.awt.Component.dispatchEvent(Component.java:4331)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.jdesktop.application.ApplicationAction.noProxyActionPerformed(ApplicationAction.java:662)
        ... 27 more
Caused by: java.lang.ClassCastException: javax.swing.JList$3 cannot be cast to javax.swing.DefaultListModel
        at javazipper.JavaZipperView.Click(JavaZipperView.java:226)
        ... 32 more
questo errore...

[OT]Java dovrebbe essere simile a .NET, invece...[/OT]

Ultima modifica di matt_jok3r : 26-11-2008 alle 19:08.
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2008, 23:31   #4
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Con quale modello crei la JList()?
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2008, 00:07   #5
uncooldrewl
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 17
crea il modello come variabile di istanza,cioè:

DefaultListModel a = new DefaultListModel();

lo metti fuori dal metodo
uncooldrewl è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2008, 01:18   #6
Don[ITA]
Senior Member
 
L'Avatar di Don[ITA]
 
Iscritto dal: Jul 2006
Città: Bergamo
Messaggi: 401
Immagino che quel OpenFileDialog sia in qualche modo costruito attorno ad un JFileChooser. Se la risposta è si allora puoi impostare quel JFileChooser in modo da permetterti di selezionare più file che ti ritorna come array.
Una volta ottenuto l'array ci fai un ciclo che aggiunge gli elementi alla tua JList.
Qualcosa tipo:
Codice:
for(File f : files) //files è un possibile array di file
    a.addElement(f.getPath());
jList1.setModel(a);
__________________
iMac 27" 5K
Don[ITA] è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2008, 15:27   #7
uncooldrewl
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 17
da quello che ha scritto si evince che vuole inserire nella lista più oggetti ma una alla volta.

se vuoi utilizzare il JFileChooser devi fare qualcosa del genere:

Codice:
    int response= chooser.showOpenDialog(this);
               
		if(response==JFileChooser.APPROVE_OPTION) { 
                   
                file = chooser.getSelectedFile();
                
                modello.addElement(file);
                jList.setModel(modello);
           }
l'oggetto chooser di tipo JFileChooser ed il modello (ad esempio un DefaultListModel) come ti ho detto prima li devi creare come variabili di istanza della classe.
poi ci sarebbe anche la possibilità di specificare un filtro per il JFileChooser in maniera tale da aprire solo file con una certa estensione...
uncooldrewl è offline   Rispondi citando il messaggio o parte di esso
Old 27-11-2008, 23:15   #8
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
Domani provo tutto e vi faccio sapere
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2008, 19:11   #9
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
Ho cercato di adattare il codice che avete postato al mio ma non ci sonop riuscito, in Java sono piuttosto niubbo
Allego la OpenFileDialog;
Codice:
public class OpenFileDialog {
    private static JFileChooser jfcChooser = null;
    private String sDirectory;
    private boolean bIsFile = false;
    public OpenFileDialog() {
        if (jfcChooser == null)
        {
            jfcChooser = new JFileChooser();
        }
        int fileState = jfcChooser.showOpenDialog(null);
        File file = jfcChooser.getSelectedFile();
        if (file != null && fileState == JFileChooser.APPROVE_OPTION)
        {
            setFilePath(file.getAbsolutePath());
        }
        else if (fileState == JFileChooser.CANCEL_OPTION)
        {
            bIsFile = false;
        }
    }

    /**
     * Gets the file path directory from the open file dialog
     * @return String of the filepath.
     */
    public String getFilePath() {
        return sDirectory;
    }

    /**
     * If a file was selected this returns a true.
     * @return true file was selected else a false
     */
    public boolean isFileSelected() {
        return bIsFile;
    }

    /**
     * Allows setting of the file path
     * @param fpath String of the file path
     */
    private void setFilePath(String fpath) {
        sDirectory = fpath;
        bIsFile = true;
    }
}
Dove devo inserire lo snippet relativo alla OFG?
Quale parte invece va nella business logic del tasto della UI?

Grazie e scusate l'ottusità
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2008, 19:15   #10
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
Ultimora! Ho risolto usando il DefaultListModel come variabile di istanza (non avevo letto subito quello ma il codice postato dopo).

GRAZIE A TUTTI!
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 01:26   #11
uncooldrewl
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 17
Quote:
Originariamente inviato da matt_jok3r Guarda i messaggi
Ultimora! Ho risolto usando il DefaultListModel come variabile di istanza (non avevo letto subito quello ma il codice postato dopo).

GRAZIE A TUTTI!
Te l'ho sottolineato più volte di usare il modello come variabile di istanza ad ogni modo credo non ti serva a molto quella classe OpenFileDialog,l'oggetto JFileChooser ha tutto quello che ti serve
uncooldrewl è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2008, 20:58   #12
matt_jok3r
Junior Member
 
Iscritto dal: Jan 2006
Messaggi: 29
L'ho creata solo come appoggio, provengo dal .NET e stavo cercando di inquadrare un attimo come funziona il tutto. Questa è solo la conversione di un vecchissimo progettino di prova
matt_jok3r è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Booking.com e OpenAI annunciano SME AI A...
Xiaomi SU7 Ultra: da domani tutti i gioc...
Sharp Inspire Expo 2026: da produttore d...
Razer Synapse Web è realtà...
Concessionarie Audi chiudono improvvisam...
Resident Evil Requiem: 4K, 60 FPS e ray ...
Le batterie LFP sono piccole e pesanti? ...
Motorola inarrestabile: nuova serie moto...
Decima generazione Pokémon: grafi...
Una nuova legge consente di rottamare un...
Google mostra per sbaglio Android per PC...
Tesla non convince più: crolla il...
OpenAI lancia Prism: l'AI ora lavora fia...
Nissan mette i pannelli solari su Ariya:...
Day 3 a Barcellona: la prima di Norris c...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:06.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v