Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
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
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-01-2007, 09:11   #1
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
[java] aiuto per applet

devo scrivere un'applet java per un esame, ma sono del tutto ignorante in materia.
il programma consiste in un semplice convertitore di unità di misura.
un "choice" (choice 1) permette la selezione della grandezza fisica da convertire mentre altre due "scelte" (choice 2, choice 3) sono per la definizione delle unità di misura, di partenza e di arrivo (es: massa, da g a kg)
ora, il mio problema è: come faccio a fare in modo che ogni volta che si sceglie una grandezza in choice 1, in choice 2 e choice 3 siano selezionabili solamente le unità di misura riferite a quella particolare grandezza?(es: massa, g,kg,t,mg,...)
grazia a chiunque abbia voglia di darmi una mano.
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 11:17   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
devo scrivere un'applet java per un esame, ma sono del tutto ignorante in materia.
il programma consiste in un semplice convertitore di unità di misura.
un "choice" (choice 1) permette la selezione della grandezza fisica da convertire mentre altre due "scelte" (choice 2, choice 3) sono per la definizione delle unità di misura, di partenza e di arrivo (es: massa, da g a kg)
ora, il mio problema è: come faccio a fare in modo che ogni volta che si sceglie una grandezza in choice 1, in choice 2 e choice 3 siano selezionabili solamente le unità di misura riferite a quella particolare grandezza?(es: massa, g,kg,t,mg,...)
grazia a chiunque abbia voglia di darmi una mano.
Suppongo che tu stia usando Swing come interfaccia utente. Quindi usi dei JComboBox. Devi innanzitutto associare al tuo choice1 un ActionListener per fare qualcosa quando un elemento viene selezionato. Poi a quel punto, dovresti cambiare la lista di elementi negli altri due JComboBox. Ti conviene usare un ComboBoxModel.

Leggi (se non l'hai già fatto) <qui> il tutorial sulle combobox.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 11:43   #3
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
grazie innanzitutto.
purtroppo non ho la più pallida di idea di cosa sia swing.
perdona la mia ignoranza...
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 13:09   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
grazie innanzitutto.
purtroppo non ho la più pallida di idea di cosa sia swing.
perdona la mia ignoranza...
Prova la applet in allegato che ho appena fatto. Compila il sorgente (javac TestComboApplet.java) e poi apri con un browser il file html (il browser deve supportare le applet, ovviamente).
Con la combo-box in alto puoi scegliere tra 2 liste di colori. Scegliendone una, la combo-box in basso viene aggiornata con la rispettiva lista.
Ovviamente è solo un semplice e banale esempio ma può esserti utile come spunto per realizzare la tua applet.
Allegati
File Type: zip TestComboApplet.zip (1000 Bytes, 6 visite)
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 17:07   #5
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
nel caso volessi sostituire l'istruzione if con una switch come dovrei fare?
ci ho provato ma mi da errore e non riesco a capire dove sbaglio.
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 17:19   #6
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
nel caso volessi sostituire l'istruzione if con una switch come dovrei fare?
ci ho provato ma mi da errore e non riesco a capire dove sbaglio.
Codice:
switch (idx)
{
    case 0:
        comboColori.setModel (comboModel1);
        break;
    case 1:
        comboColori.setModel (comboModel2);
        break;
}
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 18:18   #7
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
ok, ci siamo quasi.
ancora un problemino.
in pratica choice2 e choice3 non sono indipendenti.
se seleziono un'unità di misura in choice2 cambia anche quella in choice3 così non riesco a selezionare due unità di misura differenti.
mi spiego?
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 18:28   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
ok, ci siamo quasi.
ancora un problemino.
in pratica choice2 e choice3 non sono indipendenti.
se seleziono un'unità di misura in choice2 cambia anche quella in choice3 così non riesco a selezionare due unità di misura differenti.
mi spiego?
Sì ... perché un ComboBoxModel mantiene l'informazione sull'elemento selezionato. Basta che crei 2 istanze del model che contengono la stessa lista di elementi.
Non ho tempo adesso di provare ... ma dovrebbe essere così.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2007, 19:34   #9
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
risolto...
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2007, 19:58   #10
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
ennesimo problema.
fatti i dovuti calcoli, tramite un pulsante il risultato finale dovrebbe comparire nel campo testo in fondo all'applet.
il problema è che non riesco a gestire in maniera corretta il click sul bottone; a dire il vero non so proprio come comportarmi.
ho fatto un tentativo ma non funziona o meglio, il pulsante fa il suo lavoro, ma smette di funzionare la combobox.
dove sbaglio?

allego il listato per maggiore chiarezza.
Allegati
File Type: zip convertitore.zip (1.4 KB, 6 visite)
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2007, 21:08   #11
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
ennesimo problema.
fatti i dovuti calcoli, tramite un pulsante il risultato finale dovrebbe comparire nel campo testo in fondo all'applet.
il problema è che non riesco a gestire in maniera corretta il click sul bottone; a dire il vero non so proprio come comportarmi.
ho fatto un tentativo ma non funziona o meglio, il pulsante fa il suo lavoro, ma smette di funzionare la combobox.
dove sbaglio?
Ci sono alcune cose che non vanno:

(A)
Hai scritto: double i=Double.valueOf(valuet.getText()).doubleValue();
Non è sbagliato ma si può fare in modo più semplice con:
double i = Double.parseDouble (valuet.getText());

Però dovresti mettere un try-catch per catturare l'eccezione NumberFormatException. Se la stringa è vuota o non contiene numeri in formato valido viene lanciata questa eccezione. Inoltre questa conversione adesso la fai in qualunque caso, perché è all'inizio del metodo actionPerformed e non va molto bene così.

Quindi dovresti: 1) prendere la stringa dal campo di testo; 2) trimmare la stringa (togliere gli spazi ai lati con trim()); 3) verificare se la stringa risultante è vuota o no; 4) se non è vuota, fare la conversione nel try-catch e se c'è l'eccezione puoi ad esempio mostrare una box a video. Se la stringa invece è vuota o hai un errore, potresti cancellare il risultato.
Tutto questo però dovresti farlo solo se il 'source' è il pulsante che attiva la conversione.

(B)
Hai messo: else if(idx==2);
Il punto e virgola non ci va, così hai fatto una istruzione "vuota" come corpo del if.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2007, 21:33   #12
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
grazie per i consigli anche se alcune cose mi risultano ostiche da afferrare.
purtroppo però, la combobox continua a non funzionare; se invece elimino le ultime righe di codice relative al pulsante ecco che per magia tutto funziona.
why?!
perdona la mia ignoranza...
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2007, 21:37   #13
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
ok, ci sono.
tutto a posto...per ora.
grazie ancora.
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2007, 22:16   #14
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
Quote:
Originariamente inviato da andbin
3) verificare se la stringa risultante è vuota o no
come?
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2007, 08:23   #15
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
come?
Codice:
String strValue = valuet.getText().trim();

if (strValue.length() != 0)
{
    // ... fai la conversione ...
}
Il test si può anche fare: if (!strValue.equals(""))
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2007, 18:57   #16
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
Quote:
Originariamente inviato da andbin
Codice:
String strValue = valuet.getText().trim();

if (strValue.length() != 0)
{
    // ... fai la conversione ...
}
Il test si può anche fare: if (!strValue.equals(""))
il punto esclamativo cosa indica?
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 17-01-2007, 08:27   #17
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
il punto esclamativo cosa indica?
La negazione: se strValue non è uguale a "".
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2007, 23:25   #18
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
rieccomi...
domanda: le istruzioni per la conversione dei numeri devo metterle "dentro" il try, prima del try o dopo il catch?
non riesco a venirne fuori, mi sono arenato e non capisco dove sbaglio!
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2007, 12:15   #19
ZuMBi
Senior Member
 
Iscritto dal: Jan 2003
Città: Fidenza (PR)
Messaggi: 367
uP!
ZuMBi è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2007, 13:03   #20
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da ZuMBi
domanda: le istruzioni per la conversione dei numeri devo metterle "dentro" il try, prima del try o dopo il catch?
La conversione della stringa in un numero va ovviamente messa dentro un blocco try-catch, in quanto può lanciare l'eccezione NumberFormatException.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
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 ...
Samsung Galaxy S27 Ultra: un'importante ...
La rincorsa al fotorealismo è 'ol...
Super Smash Bros Melee arriva su Windows...
Xbox Game Pass, tante novità in a...
Samsung copierà Apple? Rincari in...
Google potrebbe rilasciare un'app uffici...
Lies of P, il sequel potrebbe chiamarsi ...
Dreamforce 2026: Salesforce punta sulla ...
SpaceX ha confermato che Flight 14 sar&a...
Googlebook pronto al debutto: Google apr...
Guida all'acquisto: quale lavapavimenti ...
Google Maps su Android Auto introduce fi...
AMD Ryzen 5 5500F: fino al 16% di presta...
L'ecosistema partner di Microsoft cresce...
Oracle registra un boom nella divisione ...
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: 08:12.


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