Bonsoir,
Je développe actuellement un logiciel sous java, ce logiciel marche correctement sous 1.4 mais pas sous 1.5. Je me suis un peu pris la tete a essayer de trouver le bug, et je suis arrivé a la conclusion que c'est un problème de gestion d'Items. L'erreur que j'obtient a l'execution est :
java.lang.NullPointerException
at sun.awt.X11.XMenuPeer.repaintMenuItem(XMenuPeer.java:363)
at sun.awt.X11.XMenuItemPeer.setLabel(XMenuItemPeer.java:60)
at java.awt.MenuItem.setLabel(MenuItem.java:221)
Quelqu'un aurai t-il une solution ?
merci d'avance ...
# .
Posté par snt . Évalué à 5.
( en plus bien souvant en isolant les lignes fautives, on se rend compte d'un petit point de détail qu'on avait oublié et qui fait que ... )
Bon courage pour ta chasse au bug en tout cas.
[^] # Re: .
Posté par jlucas . Évalué à 1.
int first = WINDOW_MENU_ITEMS;
int last = window.getItemCount()-1;
for (int i=first; i<=last; i++) {
MenuItem item = window.getItem(i);
String label = item.getLabel();
if (item!=null && label.startsWith(oldLabel)) {
if (label.endsWith("K")) {
int index = label.lastIndexOf(' ');
if (index>-1)
newLabel += label.substring(index, label.length());
}
item.setLabel(newLabel);
rien de bien compliqué... cei marche tres bien sous 1.4 mais pas sous 1.5 ..
l'erreur provient de la dernière ligne. J'ai testé la variable "newlabel", aucun probléme elle est bien affecté d'une valeur. Même , lorsque j'affiche item.getlabel() avant cette derniere ligne, j'obtient ce que je veux. Est ce que c'est un pb avec la fonction "setlabel()" ?
merci pour tes encouragements...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.