/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Problemer med tomt swing textfield
Fra : Simon Kamber


Dato : 28-05-03 16:52

Som grøn i programmeringsfaget er jeg lige kommet igang med at lave
programmer med swing interface. Jeg har nogle textfields som jeg gerne
skulle bruge værdierne fra, men hvis disse er tomme når de læses
udløser det en længere række exeptions. Den stump kode der gerne
skulle hente dataene fra et textfield ser sådan her ud:

try {
inputResult_a = input_a.getText();
} catch(Exception e) {
inputResult_a = new String("0");
}

Hvis input_a (et JTextField object) er tomt, kommer der en liste ca
som denne i kommandolinien:

java.lang.NumberFormatException: empty String
   at java.lang.FloatingDecimal.....
   at java.lang.Double.valueOf(Double.java:183)
   osv.

Nogle der kan fortælle mig hvad der sker, og endnu bedre hvad jeg skal
gøre for at det holder op med at ske?

 
 
Lars Dam (28-05-2003)
Kommentar
Fra : Lars Dam


Dato : 28-05-03 17:42

On Wed, 28 May 2003 17:51:59 +0200
Simon Kamber <simon_kamber@hot<<<REMOVE>>>mail.com> wrote:

> Som grøn i programmeringsfaget er jeg lige kommet igang med at lave
> programmer med swing interface. Jeg har nogle textfields som jeg gerne
> skulle bruge værdierne fra, men hvis disse er tomme når de læses
> udløser det en længere række exeptions. Den stump kode der gerne
> skulle hente dataene fra et textfield ser sådan her ud:
>
> try {
> inputResult_a = input_a.getText();
> } catch(Exception e) {
> inputResult_a = new String("0");
> }
>
> Hvis input_a (et JTextField object) er tomt, kommer der en liste ca
> som denne i kommandolinien:
>
> java.lang.NumberFormatException: empty String
>    at java.lang.FloatingDecimal.....
>    at java.lang.Double.valueOf(Double.java:183)
>    osv.
>
> Nogle der kan fortælle mig hvad der sker, og endnu bedre hvad jeg skal
> gøre for at det holder op med at ske?

1) Du kan fange NFE'en og håndtere den
2) Du kan checke at strengen ikke er tom inden du prøver at konvertere den
3) Du kan sikre at der kun kan tastes tal ind i feltet (så der ikke kommer bogstaver med)

En kombination af disse tre vil nok være bedst.

vh. ld

Simon Kamber (29-05-2003)
Kommentar
Fra : Simon Kamber


Dato : 29-05-03 16:08

On Wed, 28 May 2003 18:41:45 +0200, Lars Dam <larsdam@post2.tele.dk>
wrote:

>3) Du kan sikre at der kun kan tastes tal ind i feltet (så der ikke kommer bogstaver med)

Ok, nu fik jeg det til at virke, forsøgte at fange NFE'en det forkerte
sted:/. Men hvordan er det lige at man begrænser et felt til tal?

Anders K. Olsen (29-05-2003)
Kommentar
Fra : Anders K. Olsen


Dato : 29-05-03 16:22

"Simon Kamber >>mail.com>" <simon_kamber@hot<<<REMOVE> skrev i en meddelelse
news:b87cdv0u3i9p9n99baf5nlt82199amv2g2@4ax.com...
> Men hvordan er det lige at man begrænser et felt til tal?

Du kan bruge JFormattedTextField.

Der er en (ultra) kort beskrivelse i Java tutorial'en:
http://java.sun.com/docs/books/tutorial/uiswing/components/formattedtextfield.html

Du kan måske finde mere et andet sted på nettet, hvis du søger efter det.

/Anders



Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408193
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste