Hejsan! Tror du har nytta av att använda InputVerifier. http://www.java2s.com/Code/Java/Swing-JFC/UsinganInputVerifierwithaformattedtextfield.htm annars så kan man ju använda kontrollvariabler av typen boolean, bara att sätta den efter varja konvertering :) Anledningen till att du i det här fallet inte kan ta reda på vilket textfält det är som skapar exceptionet är för att exceptionet inte känner till vilken textbox det handlar om. Allt den känner till är att du försöker anropa en metod med en sträng som inte är giltlig... förslagsvis bör du istället göra så att du validerar strängen innan du parsar den.. Tack så mycket alla ni som svarat.kan man kontrollera från vilket fönsterobjekt som ett undantag kastas?
Kan man utröna från vilket förnsterobjekt som ett undantag kastas?
Det vore användbart om man tex har en application med låt oss säga 5 st JTextFeilds
och ska validera att dessa innehålller siffror och inte bokstäver.
Idag så "måste" jag ju köra en try/catch för var och en av fönstren för att kontrollera att datat är korrekt
enligt ex1.
ex1.
try{
serieNr = Integer.ParseInt(tSerieNr.gettext().trim());
}
Catch(NumberFormatException nfex)
{
JOptonPane.showMessageDialog(null, nfex.getMessage());
System.exit(1);
}
ex2. Jag skulle hellre vilja kontrollera alla JTextFileds samtidigt i en enda try/catch enl nedan
try{
serieNr = Integer.ParseInt(tSerieNr.gettext().trim());
serieNr2 = Integer.ParseInt(tSerieNr2.gettext().trim());
serieNr3= Integer.ParseInt(tSerieNr3.gettext().trim());
}
Catch(NumberFormatException nfex)
{
// här skulle jag vilja kontrollera från vilket objekt som undantaget kastades?????
JOptonPane.showMessageDialog(null, nfex.getMessage());
System.exit(1);
}
Kan man på något sätt få detta att fungera eller är jag helt ute och cyklar?
Det kanske finns någon annan mer lämpligt sätt att ta itu med dettta?
taksam för svar
//Jonas - newbieSv: kan man kontrollera från vilket fönsterobjekt som ett undantag kastas?
Sv:kan man kontrollera från vilket fönsterobjekt som ett undantag kastas?
Sv: kan man kontrollera från vilket fönsterobjekt som ett undantag kastas?
förslagsvis gör du en metod som tar en sträng att validera, som returnerar sant eller falskt, sätt sedan dina textboxar i en array... loopa igenom arrayen... i varje varv, validera texten, om den valideras sant så parsa den till en int... och gör om. Om den validerar false så vidta den åtgärd som behövs för textboxen...
i funktionen som validerar strängen kan du sätta din try-catch om du vill det...
lycka tillSv: kan man kontrollera från vilket fönsterobjekt som ett undantag kastas?
Jo jag har löst det med metoder tidigare men undrade om det fanns något enklare sätt.