CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Java] Ou est le soucis ?

HareeBoo
HareeBoo
Niveau 6
04 octobre 2014 à 21:10:52

Yop, voilà le topo : Prenez trois boutons et une variable

int result;

L'un des boutons affiche "1" dans mon JLabel label, l'autre affiche "2". Le dernier est un opérateur (pour le moment mes tests se font sur un "+" uniquement). Je veux faire des opérations avec ces deux boutons (style calculette Windows).

Mon postulat : Je dis au programme qu'il doit convertir la valeur qui pour le moment n'est qu'un String dans mon JLabel en variable int. Donc, lorsque j'appuie sur le bouton "+" ça donne ça :

result = Integer.valueOf(label.getText()).intValue() + Integer.valueOf(label.getText()).intValue();

L'ennuie c'est que...bah ça marche pas. Genre je fais ça pour les additions ça passe niquel, mais dés que je tente avec une multiplication ou une division, ça me donne de la merde style : 4/2 = 1

D'un point de vu purement logique pourtant je vois pas ou ça merde, je prends la valeur string, en fait un int, puis choisis l'opérateur avant d'afficher le résultat dans mon label, alors qu'est ce qui se passe ? Merci :)

_skip
_skip
Niveau 10
05 octobre 2014 à 12:06:40

4/2 = 1 c'est pas trop possible
En revanche 3/2 = 1, oui c'est possible parce que tu travailles avec des INT.
1,5 en Int, ca existe pas.

Mais bon de façon générale il serait plus raisonnable que tu sépares la question de l'affichage de ton modèle. Je veux dire, actuellement tu parses ton JLAbel pour connaître la valeur en int, tu devrais faire le contraire, càd actualiser le jlabel par rapport à ton int.

HareeBoo
HareeBoo
Niveau 6
05 octobre 2014 à 15:49:13

D'accord, et je ferai ça comment concrètement ? :)

_skip
_skip
Niveau 10
06 octobre 2014 à 13:20:20

Fais déjà fonctionner ta division et ensuite cherche du côté de l'approche MVC.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment