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 07-03-2008, 19:19   #1
melarco
Member
 
Iscritto dal: Oct 2007
Messaggi: 33
[Java][FormattedTextFieldVerifier]

Salve a tutti e un grazie per la disponibilità e conpetenza del forum!!

Cerco invano di controllare se un campo d' inserimento testo sia vuoto o meno
il campo è JFormattedTextField campoTesto1
sto utilizzando questa classe :

public class FormattedTextFieldVerifier extends InputVerifier {
public boolean verify(JComponent input) {
if (input instanceof JFormattedTextField) {
JFormattedTextField ftf = (JFormattedTextField)input;
JFormattedTextField.AbstractFormatter formatter = ftf.getFormatter();
if (formatter != null) {
String text = ftf.getText();
try {
formatter.stringToValue(text);
return true;
} catch (ParseException pe) {
return false;
}
}
}
return true;
}
public boolean shouldYieldFocus(JComponent input) {
return verify(input);
}
}

nel programma principale invece alla presione del tasto ok

public void actionPerformed(ActionEvent e) {

FormattedTextFieldVerifier p= new FormattedTextFieldVerifier() ; boolean ved=p.verify(campoTesto1);

La variabile ved risulta sempre true anche se non insrisco nessun carattere nel campo .Per quale motivo??
ciao e grazie
melarco è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2008, 21:13   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Ehm ... ho la vaga impressione che non ti sia chiaro come si utilizza un InputVerifier.

InputVerifier è una classe astratta che va estesa per poter definire un proprio criterio di validazione dell'input (implementando in genere solo verify()). Si deve quindi creare una istanza di questa sottoclasse e passarla al componente da gestire tramite il metodo setInputVerifier() di JComponent (quindi esiste per tutti i componenti Swing che estendono JComponent).

Prima che il focus venga trasferito ad un altro componente, viene fatto il controllo e se l'input non è valido, il focus rimane su componente.

Insomma ... il concetto è che un InputVerifier serve per far sì che il focus non possa passare ad un altro componente se l'input non è valido. Tutto qua.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2008, 22:50   #3
melarco
Member
 
Iscritto dal: Oct 2007
Messaggi: 33
grazie per la risposta!!
vediamo un po se ho capito

class FormattedTextFieldVerifier extends InputVerifier
{
public boolean verify(JComponent component)
{
JFormattedTextField field =(JFormattedTextField) component;
return field.isEditValid();


}

}
nel programma principale ...campoTesto1 e il campo su cui voglio fare il controllo quindi

campoTesto1.setInputVerifier(new FormattedTextFieldVerifier());
FormattedTextFieldVerifier p= new FormattedTextFieldVerifier() ; boolean ved=p.verify(campoTesto1);

ma ved ritorna sempre true anche quando il campo è vuoto potresti darmi una mano purtroppo il discorso non mi è chiaro
ciao grazie mille
melarco è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2008, 23:10   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da melarco Guarda i messaggi
FormattedTextFieldVerifier p= new FormattedTextFieldVerifier() ; boolean ved=p.verify(campoTesto1);

ma ved ritorna sempre true anche quando il campo è vuoto potresti darmi una mano purtroppo il discorso non mi è chiaro
Sono andato adesso a vedere la documentazione di JFormattedTextField e mi sono accorto che in effetti hai preso il codice di esempio pari pari. Che non metto in dubbio che sia corretto, a parte il fatto che non servirebbe fare l'override di shouldYieldFocus visto che in InputVerifier è già implementato proprio così.

Comunque la questione è che una volta che hai impostato un tuo InputVerifier tramite il metodo setInputVerifier(), non devi fare null'altro! È il componente che si occupa di "sentire" quando il focus sta per essere trasferito, interrogare il InputVerifier e fare ciò che è necessario in base alla risposta.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è 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...
Il terminale Ghostty 1.4 cambia passo tr...
Sensore Sony LYTIA 720 per smartphone: -...
Uno script anti-bot usa riferimenti alle...
Alphabet perde 500 miliardi di dollari i...
Reddit cambia strategia dopo il calo del...
Calcolo quantistico, Intel annuncia l'ac...
DirectX Raytracing si aggiorna: pi&ugrav...
Honda lancerà nuovamente il proto...
La prima missione Amazon Leo con il razz...
Invia il tuo nome su Titano, la luna di ...
Starship: Ship 42 e Super Heavy Booster ...
Chrome, meno tab switching con la nuova ...
L'IA agentica spopola fra le aziende, ma...
ASUS UGen300 arriva in Italia a 299 euro...
Iliad aggiorna la gamma di offerte per 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: 08:47.


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