IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Mini calculatrice en VB.net


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 7
    Par défaut Mini calculatrice en VB.net
    Bonjour ^^

    Je souhaiterais faire une mini calculatrice rapide dans mon application en VB.net

    Un truc simple du genre: Une TextBox pour que l'utilisateur pose son opération avec des possibilité de calcul basique du genre + * - / () ² ><, et un bouton "résultat" sur lequel cliquer pour avoir le résultat dans cette même textbox.
    Si celà ne demande pas 50 000 lignes de code et que la solution est simple pour mon niveau de nOOb, j'aimerais savoir quelles sont les fonctions à utiliser dans le code de mon bouton "résultat" s'il vous plait?

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    C'est moins simple que ça en a l'air, parce qu'il n'y a pas de fonction en VB.NET pour interpréter le calcul saisi par l'utilisateur... Tu pourrais implémenter ça toi-même, mais c'est pas facile. Une astuce que j'ai déjà utiliser consiste à créer une petite DLL en JScript.NET, pour pouvoir utiliser la fonction Eval. Ensuite tu références la DLL ainsi créée et tu l'utilises à partir de VB.NET

    Je l'avais expliqué en détail ici :
    http://www.developpez.net/forums/d71...s/#post4168031

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    Pour évaluer une expression algébrique il faut utiliser un arbre (binaire) syntaxique. Et pour une bonne utilisation il faut transformer l'expression algébrique en utilisant la notation polonaise inverse, cela facilite les choses.
    Je rejoins Tomlev, ce pb qui semble simple en apparences, relève en fait de notions complexes.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 312
    Par défaut
    Ou tout simplement une librarie qui sait calculer ton résultat ?

    C'est pas ce qui manque sous google on a l'embarras du choix

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 7
    Par défaut
    J'ai utilisé Math.dll compilé par Tomlev puis dans mon projet j'ai fait:

    Projet > Ajouter une référence... > Parcourir puis j'ai sélectionné la DLL, puis "Ok".

    J'ai créé Une petite textbox nommé: CalculUtilisateur
    Un Bouton nommé: ToolStripButton3 qui aura pour fonction de calculer le résultat de l'opération posée dans la textBox puis d'afficher le résultat dans celle ci

    Voici le code assigné à mon bouton:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CalculResultat.Click
            Dim d As Double = Eval(CalculUtilisateur.Text)
            CalculUtilisateur.Clear()
            CalculUtilisateur.Text = (d)
        End Sub
    End Class
    Celà ne fonctionne pas, il ne reconnais pas plus la fonction Eval (pourtant la référence de la Dll a bien été ajoutée). Que faire s'il vous plait?

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    C'est JsMath.Eval et pas Eval tout court

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 7
    Par défaut
    Merci bien, j'avais aussi oublié d'ajouter le "Imports JsMath" au début de mon code.

    Problème résolu !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mini calculatrice d'entier
    Par bosk1000 dans le forum Débuter
    Réponses: 10
    Dernier message: 19/04/2015, 16h31
  2. Mini-calculatrice - division avec des nombres décimaux
    Par maelyncharlene dans le forum Débuter
    Réponses: 2
    Dernier message: 26/09/2014, 11h05
  3. mini chat en vb.net
    Par stephan1932 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/11/2010, 15h02
  4. [VB.NET 2008] Problème de script pour calculatrice
    Par volonter dans le forum Windows Forms
    Réponses: 3
    Dernier message: 18/08/2009, 18h35
  5. Une calculatrice en .Net
    Par Ishizaki dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/04/2008, 17h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo