Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Il nuovo top di gamma vivo punta su un comparto fotografico particolarmente articolato, con un teleobiettivo da 200 megapixel e teleconvertitori esterni capaci di arrivare a 400 mm equivalenti. Lo abbiamo provato a Tenerife, mettendo alla prova fotocamere, prestazioni, autonomia e accessori. Ecco come si è comportato.
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-10-2010, 12: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 12:50. Motivo: JList
m0linas è offline   Rispondi citando il messaggio o parte di esso
Old 14-10-2010, 14: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, 14: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, 14: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, 14: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, 14: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, 14: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, 14: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


Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
RDNA 5 sulle APU AMD, ma non per tutti: ...
Marvell acquisisce Lumentum per 115 mili...
La febbre dei data center fa impennare i...
ECOVACS T90S OMNI crolla a 499€ su Amazo...
In Cina i camion elettrici hanno gi&agra...
Attacchi hacker ai supermercati in Europ...
I datacenter non piacciono? OpenAI prova...
Cupra Raval sfida BMW, Volvo e le altre:...
BYD supera per la prima volta le 300.000...
Crisi RAM, spunta un prezzo incredibile ...
Ginux, un nuovo kernel compatibile con L...
Gemini Notebook si aggiorna: arrivano i ...
Svolta per l'emulazione della prima Xbox...
Narwal celebra 10 anni: l'evoluzione tec...
TIM Enterprise acquisisce il 70% di VoiS...
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:15.


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