Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-10-2010, 11:35   #1
m0linas
Member
 
L'Avatar di m0linas
 
Iscritto dal: Feb 2008
Città: PoggibonZi
Messaggi: 140
[JAVA] Lista di oggetti in una GUI

Ciao a tutti, sto cercando di realizzare un programma p2p per il download di file.
Il funzionamento è il seguente: il client si connette al server, invia la lista dei propri file che vuole condividere, e attende che il server gli invii la lista dei file attualmente disponibili nella rete dei suoi client.
A questo punto, il client deve poter scegliere da quest'ultima lista un qualsiasi file e chiedere la connessione al client che lo possiede per scaricarlo.
Il problema è che non so come fare per visualizzare la lista dei file disponibili sulla gui del client...avevo pensato ad una AWT List, però prende in input solo String, e io vorrei poter memorizzare in questa lista un mio oggetto che fra i suoi campi abbia anche l'ip del proprietario, in modo che non sia necessario eseguire una ricerca su tutti i file per scoprire chi sia...
Qualcuno ha dei suggerimenti?

EDIT : Scusate, sono stato una mattinata a cercarlo e l'ho trovato solo ora.....probabilmente quello che cercavo è JList di swing, il cui costruttore prende come argomento un DefaultListModel, e il metodo addElement di DefaultListModel prende come argomento proprio Object!

Se avete comunque soluzioni migliori, o qualcosa che smentisca la mia ipotesi, vi sarei grato se me le comunicaste.
__________________
Ho felicemente trattato con: Isomarcus, NLDomy, cipacci.

Intel e2180 @ 3.1Ghz + Arctic Cooling Freezer 7 ~ MSI P35 Neo2-FR ~ Geil Black Dragon @ 970Mhz 4-4-4-12 ~ ASUS 8800GT 512Mb ~ OCZ StealthXtream 500W

Ultima modifica di m0linas : 14-10-2010 alle 11:50. Motivo: JList
m0linas è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:06   #2
Jak696
Member
 
L'Avatar di Jak696
 
Iscritto dal: Feb 2008
Messaggi: 269
Quote:
Originariamente inviato da m0linas Guarda i messaggi
Ciao a tutti, sto cercando di realizzare un programma p2p per il download di file.
Il funzionamento è il seguente: il client si connette al server, invia la lista dei propri file che vuole condividere, e attende che il server gli invii la lista dei file attualmente disponibili nella rete dei suoi client.
A questo punto, il client deve poter scegliere da quest'ultima lista un qualsiasi file e chiedere la connessione al client che lo possiede per scaricarlo.
Il problema è che non so come fare per visualizzare la lista dei file disponibili sulla gui del client...avevo pensato ad una AWT List, però prende in input solo String, e io vorrei poter memorizzare in questa lista un mio oggetto che fra i suoi campi abbia anche l'ip del proprietario, in modo che non sia necessario eseguire una ricerca su tutti i file per scoprire chi sia...
Qualcuno ha dei suggerimenti?

EDIT : Scusate, sono stato una mattinata a cercarlo e l'ho trovato solo ora.....probabilmente quello che cercavo è JList di swing, il cui costruttore prende come argomento un Model, e il metodo addElement di DefaultListModel prende come argomento proprio Object!

Se avete comunque soluzioni migliori, o qualcosa che smentisca la mia ipotesi, vi sarei grato se me le comunicaste.
Innanzitutto hai fatto una ottima scelta a puntare sulla JList, perchè AWT è deprecato, ad eccezione ovviamente di quelle parti che sono state integrate in Swing.

Occhio comunque che mi sembra che la JList esegua il metodo toString() degli Object che ha nel Model, per popolarsi. Questo significa che nel caso di una stringa non c'è nessun problema, visto che toString() non restituisce altro che la stringa stessa, ma nel caso di un tuo oggetto dovrai occuparti di fare l'override di tale metodo.

In alternativa potresti tenere un arraylist separato con i tuoi oggetti, e poi popolare il Model quando necessario con delle semplici stringhe... entrambe le soluzioni sono valide.
__________________
CPU: AMD Athlon X2 7750BE 3.15Ghz@vcore 1.3750 / NorthBridge: [email protected]
RAM: Mushkin XP2 Radioactive 4GB 900Mhz@4-4-4-12-1T / HyperTransport: 2025Mhz
VGA: Club3D Radeon HD4850 / HDD: Western Digital Caviar RE3
Jak696 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:13   #3
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Puoi creare un model personalizzato, se lo desideri, e anche un renderer personalizzato. Questo link potrebbe aiutarti a mettere le mani su informazioni utili in tal senso:
- How to Use List [The Java Tutorials]
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:19   #4
Jak696
Member
 
L'Avatar di Jak696
 
Iscritto dal: Feb 2008
Messaggi: 269
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Puoi creare un model personalizzato, se lo desideri, e anche un renderer personalizzato. Questo link potrebbe aiutarti a mettere le mani su informazioni utili in tal senso:
- How to Use List [The Java Tutorials]
Questa invece è l'alternativa "difficile"
__________________
CPU: AMD Athlon X2 7750BE 3.15Ghz@vcore 1.3750 / NorthBridge: [email protected]
RAM: Mushkin XP2 Radioactive 4GB 900Mhz@4-4-4-12-1T / HyperTransport: 2025Mhz
VGA: Club3D Radeon HD4850 / HDD: Western Digital Caviar RE3
Jak696 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:24   #5
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Jak696 Guarda i messaggi
Questa invece è l'alternativa "difficile"
Definisci "difficile"...

Non è difficile, sembra difficile, perchè non hai mai approfondito, dunque tutto ti sembra "misterioso"
In realtà lo sforzo più grosso richiesto per comprendere i concetti esposti in quella pagina di tutorial sono il tempo neccesario per consultare e provare con mano.
Ma a conti fatti è un buon investimento di tempo, secondo me, perchè alcuni concetti esposti circa i model e i renderer per la JList li ritrovi tali e quali come meccanismi che si ripetono e restano validi anche per gli altri componenti di Swing.

C'è anche da dire che quello è solo un tutorial, per approfondire in modo più agevole ci vorrebbe un buon testo; e anche quello non sarebbe più "difficile", ma più "costoso"
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:35   #6
Jak696
Member
 
L'Avatar di Jak696
 
Iscritto dal: Feb 2008
Messaggi: 269
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Definisci "difficile"...

Non è difficile, sembra difficile, perchè non hai mai approfondito, dunque tutto ti sembra "misterioso"
In realtà lo sforzo più grosso richiesto per comprendere i concetti esposti in quella pagina di tutorial sono il tempo neccesario per consultare e provare con mano.
Ma a conti fatti è un buon investimento di tempo, secondo me, perchè alcuni concetti esposti circa i model e i renderer per la JList li ritrovi tali e quali come meccanismi che si ripetono e restano validi anche per gli altri componenti di Swing.

C'è anche da dire che quello è solo un tutorial, per approfondire in modo più agevole ci vorrebbe un buon testo; e anche quello non sarebbe più "difficile", ma più "costoso"
Ho fatto qualcosa di simile con una JTable e il suo TableModel, e devo riconoscere che aiuta a chiarire le idee riguardo la logica che sta dietro a Swing.
Comunque Swing non mi piace molto, troppo macchinoso: trecento JPanel anche per un'interfaccia semplice.
Preferisco di gran lunga SWT
__________________
CPU: AMD Athlon X2 7750BE 3.15Ghz@vcore 1.3750 / NorthBridge: [email protected]
RAM: Mushkin XP2 Radioactive 4GB 900Mhz@4-4-4-12-1T / HyperTransport: 2025Mhz
VGA: Club3D Radeon HD4850 / HDD: Western Digital Caviar RE3
Jak696 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:41   #7
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Jak696 Guarda i messaggi
Comunque Swing non mi piace molto, troppo macchinoso: trecento JPanel anche per un'interfaccia semplice.
Preferisco di gran lunga SWT
A ognuno il suo, sui gusti non si discute.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 13:46   #8
Jak696
Member
 
L'Avatar di Jak696
 
Iscritto dal: Feb 2008
Messaggi: 269
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
A ognuno il suo, sui gusti non si discute.
Chiaramente, questa era più una considerazione tra me e me

Che poi alla fine molti sviluppatori disegnano le GUI in modo visuale, quindi il problema spesso non si pone.
__________________
CPU: AMD Athlon X2 7750BE 3.15Ghz@vcore 1.3750 / NorthBridge: [email protected]
RAM: Mushkin XP2 Radioactive 4GB 900Mhz@4-4-4-12-1T / HyperTransport: 2025Mhz
VGA: Club3D Radeon HD4850 / HDD: Western Digital Caviar RE3
Jak696 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
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: 19:09.


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