[Java] java.lang.NumberFormatException
Résolu
valentin2703
Messages postés
185
Statut
Membre
-
choubaka Messages postés 39984 Statut Modérateur -
choubaka Messages postés 39984 Statut Modérateur -
Bonjour,
Cette erreur apparait quand je tente de faire une action avec mon programme. J'ai crée une petite interface pour changer les raccourcis attribués à mes JButton, JMenu, ...
Pour ce faire, j'utilise la méthode :
Ensuite je rentre une lettre dans un JTextField et je voudrais que cela change le raccourcis, dans mon actionperformed, je met donc :
Et la quand je veut changer mon raccourcis j'obtient l'erreur java.lang.NumberFormatException. Pourtant j'ai converti mon String au format Integer :(
Et la j'avoue avoir un peut tout tenter, donc si vous aviez quelques idées :D
Cette erreur apparait quand je tente de faire une action avec mon programme. J'ai crée une petite interface pour changer les raccourcis attribués à mes JButton, JMenu, ...
Pour ce faire, j'utilise la méthode :
public void changeButtonMnemonic(int newMnemo){ reset.setMnemonic(newMnemo); //reset ==> Bouton }
Ensuite je rentre une lettre dans un JTextField et je voudrais que cela change le raccourcis, dans mon actionperformed, je met donc :
raccourcis = JTEXTFIELD.getText(); key = "KeyEvent.VK_"+raccourcis; int intkey = Integer.parseInt(key); changeButtonMnemonic(intkey);
Et la quand je veut changer mon raccourcis j'obtient l'erreur java.lang.NumberFormatException. Pourtant j'ai converti mon String au format Integer :(
Et la j'avoue avoir un peut tout tenter, donc si vous aviez quelques idées :D
A voir également:
- Java.lang.numberformatexception for input string
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Idm for mac - Télécharger - Téléchargement & Transfert
- Input not supported - Forum Ecran
- Instagram for pc - Télécharger - Divers Communication
- Cannot access offset of type string on string - Forum PHP
3 réponses
bonjour
C'est normal, ceci "key = "KeyEvent.VK_"+raccourcis", ne pourra jamais être converti en int..
pour qu'un string soit converti en int, il doit contenir un caractère représentant un chiffre.
Tu dois trouver une autre solution, vois plutôt du côtés des select case.. cumulés avec des conditions afin de ne pas se retrouver avec de trop long select case
tu peux également travailler avec des structures de données de type clef-valeur
du style
Clef -> Valeur
A -> KeyEvent.VK_A
B -> KeyEvent.VK_B
etc...
Chouba,
Rhâââgnagna
C'est normal, ceci "key = "KeyEvent.VK_"+raccourcis", ne pourra jamais être converti en int..
pour qu'un string soit converti en int, il doit contenir un caractère représentant un chiffre.
Tu dois trouver une autre solution, vois plutôt du côtés des select case.. cumulés avec des conditions afin de ne pas se retrouver avec de trop long select case
tu peux également travailler avec des structures de données de type clef-valeur
du style
Clef -> Valeur
A -> KeyEvent.VK_A
B -> KeyEvent.VK_B
etc...
Chouba,
Rhâââgnagna
Si j'ai bien compris tu essayes de mettre un caractère au format String dans une variable Int. Mais sauf erreur le parseInt ne marche pas pour du type String.
Il faut le passer en entier, donc en ASCII
valeurChar = (char)i;
valeurInt = (int)c;
Par contre je n'ai pas encore touché aux raccourcis donc je ne sais pas comment il doit récupérer la valeur derrière.
Il faut le passer en entier, donc en ASCII
valeurChar = (char)i;
valeurInt = (int)c;
Par contre je n'ai pas encore touché aux raccourcis donc je ne sais pas comment il doit récupérer la valeur derrière.
je vais essayer de te créer cette fameuse classe ce soir ...
si ça marche, tu me devras un pot ... ;-)
si ça marche, tu me devras un pot ... ;-)
ne cherche plus
https://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html
je crois que c'est ce que tu cherches
https://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html
je crois que c'est ce que tu cherches
Je récupère le raccourcis dans un JComboBox (J'ai mis toutes les valeurs de F1-F12, A-Z, 0-9) de cette manière :
Ensuite je veut traiter le raccourcis quand j'appuie sur le Bouton "okquitter" :
Mais il me dit qu'on ne peut pas traiter une valeur String dans un Switch x)
à partir du SE 7, tu peux utiliser des strings