Torna indietro   Hardware Upgrade Forum > Software > Programmazione

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à
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 che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Abbiamo provato Samsung Galaxy Tab S12 Ultra nella versione 12 GB + 256 GB con tastiera, e il risultato è un tablet che in questa configurazione si comporta come un notebook con la fluidità tipica di Android. Spessore di 5,1 mm, display Dynamic AMOLED 2X da 14,6 pollici, MediaTek Dimensity 9500 e un software senza incertezze compongono un prodotto di vertice, con prezzi da 1.539 euro, frenato solo da un'autonomia nella parte bassa del confronto
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-03-2009, 01:39   #1
Screwface
Junior Member
 
Iscritto dal: Jul 2008
Messaggi: 10
[Java] Jlist in una finestra di dialogo

Ciao a tutti. Sono un novizio di Java ed ho iniziato da poco a realizzare delle semplici GUI. Ho realizzato un menù con varie voci (del tipo File, Modifica, Help ecc.): selezionando una di queste si apre un'ulteriore finestra di dialogo con due menù a tendina (Jlist) e un jButton ("ok"), dalle quali è possibile selezionare varie opzioni. Quello che vorrei sapere è come posso fare affinché la scelta in un menù "influenzi" quelle nell'altro: ad esempio, se della prima jList posso scegliere fra rettangolo, cerchio, quadrato e nella seconda Verde, Rosso, Giallo vorrei far sì che, scegliendo quadrato, nel secondo menù vengano mostrate solo le scelte Verde e Rosso, se scelgo cerchio solo Giallo e Rosso ecc. E' possibile fare una cosa del genere? come posso fare?
Grazie a tutti.
Screwface è offline   Rispondi citando il messaggio o parte di esso
Old 06-03-2009, 10:41   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Screwface Guarda i messaggi
Quello che vorrei sapere è come posso fare affinché la scelta in un menù "influenzi" quelle nell'altro: ad esempio, se della prima jList posso scegliere fra rettangolo, cerchio, quadrato e nella seconda Verde, Rosso, Giallo vorrei far sì che, scegliendo quadrato, nel secondo menù vengano mostrate solo le scelte Verde e Rosso, se scelgo cerchio solo Giallo e Rosso ecc. E' possibile fare una cosa del genere? come posso fare?
Grazie a tutti.
Prova a schematizzare la logica che hai descritto in termini di oggetti ed eventi.
JList listGeom = la JList dove l'utente seleziona la forma geometrica.
JList listColor = la JList dove l'utente seleziona uno dei colori possibili per la forma selezionata in listGeom.

Caricamento del JPanel dove sono inserite le JList:
- carico tutti i valori possibili per listGeom;
- al caricamento rendo selezionato il primo item di listGeom;
- carico i valori di listColor con i valori possibili per l'item selezionato in listGeom;

Interazione utente:
- Click(selezione) su item in listGeom: recupero l'item selezionato e lo uso per ricaricare correttamente i valori di listColor;
- Click(selezione) su item in listColor: recupero l'item selezionato;
- Click su JButton "OK": faccio quello che devo con gli items selezionati/recuperati (una Forma e un Colore, tra quelli possibili per quella Forma).

Andiamo a vedere in dettaglio come possiamo fare per implementare la funzionalità sopra evidenziata in grassetto.
Appare evidente che da qualche parte deve esistere una sorgente dati da consultare, del tipo: forma -> listaColori; ovvero una collezione di forme geometriche, ognuna a sua volta associata a una collezione di Colori.

Per esempio un HashMap, la cui chiave sia il nomeForma (String) e il cui valore sia una collezione di Colori.
La collezione di Colori potrebbe essere un ArrayList di oggetti Color, per esempio.
La tua struttura potrebbe per esempio essere così:
Codice:
....
// chiave: String
// valore: List<Color>
HashMap<String,List<Color>> shapeColorMap;
...
e inizializzata così:
Codice:
...
// creazione String con i nomi delle forme
String rettangolo = "Rettangolo";
String quadrato = "Quadrato";
String cerchio = "Cerchio";
...
// creazione liste dei colori per ogni nome-forma
ArrayList<Color> rettangoloColors = new ArrayList<Color>();
rettangoloColors.add(new Color.RED);
rettangoloColors.add(new Color.GREEN);
rettangoloColors.add(new Color.YELLOW);

ArrayList<Color> quadratoColors = new ArrayList<Color>();
quadratoColors.add(new Color.RED);
quadratoColors.add(new Color.GREEN);

ArrayList<Color> cerchioColors = new ArrayList<Color>();
cerchioColors.add(new Color.RED);
cerchioColors.add(new Color.YELLOW);
...
// creazione mappa per associazione: nomeForma -> listaColori
shapeColorMap = new HashMap<String,List<Color>>();
shapeColorMap.put(rettangolo, rettangoloColors);
shapeColorMap.put(quadrato, quadratoColors);
shapeColorMap.put(cerchio, cerchioColors);
...
poi questa "shapeColorMap" ci può essere utile in qualche altro punto del codice per consultare appunto una forma quali colori può assumere.

In dettaglio:
-> al click dell'utente su una voce della JList listGeom si dovrebbe:
1) recuperare l'item selezionato (nomeForma);
2) usare l'item selezionato come chiave per recuperare la sua lista di colori dalla mappa
Codice:
...
List<Color> listColor = shapeColorMap.get(nomeForma);
...
3) usare i valori nella la lista di colori per ricaricare la JList listColor


Spero di averti dato qualche spunto, ciao.
__________________

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)

Ultima modifica di banryu79 : 06-03-2009 alle 10:44.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
L’ex CEO di Intel Gelsinger punta su una...
Techly, quattro nuovi supporti TV fra mo...
Mass Effect sacrificato per Star Wars: i...
Gemini, addio al copia e incolla per cor...
13 miliardi per un colpo di stato? NVIDI...
L'agente AI Wabi crea mini-app su misura...
Edge è il primo browser a supportare Acc...
L'IA di Firefox ora compila i moduli da ...
Tracking pixel nelle email: cosa cambia ...
La GeForce RTX 5080 da 24 GB potrebbe ar...
Apple mette alle strette OpenAI, la caus...
Xbox ancora in calo: ecco com'è a...
Car of the Year 2027: sette finaliste e ...
Google Beam cambia tutto: arrivano le vi...
Curry Barker, il regista di Obsession, p...
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: 21:05.


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