BBAT BATCH ON-LINE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Connexion

Récupérer mon mot de passe

Qui est en ligne ?
Il y a en tout 9 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 9 Invités

Aucun

Le record du nombre d'utilisateurs en ligne est de 36 le Lun 23 Sep 2024, 10:15
Derniers sujets
» [StackOverflow] Batch to Create video .srt Subtitles with right timing
Calculatrice à virgule flottante. EmptyVen 25 Déc 2015, 14:17 par Sachadee

» [devellopez] Formater une date en ligne Dos
Calculatrice à virgule flottante. EmptyVen 31 Juil 2015, 10:40 par Dylan Gadacha

» Un super Tuto Batch de IniTScreen
Calculatrice à virgule flottante. EmptyLun 08 Juin 2015, 12:16 par InitScreen

» Un code MATRIX sympa
Calculatrice à virgule flottante. EmptyDim 12 Avr 2015, 14:27 par Sachadee

» [BAT/EXE] DresolChange changer la sesolution de l´écran
Calculatrice à virgule flottante. EmptyMar 17 Mar 2015, 09:12 par Sachadee

» [EXE/bat] DpScript Código Delphi interpreter
Calculatrice à virgule flottante. EmptyJeu 12 Mar 2015, 15:48 par Sachadee

» Externo SaveDlg com 2 kb
Calculatrice à virgule flottante. EmptyDim 15 Fév 2015, 12:20 par Sachadee

» présentation
Calculatrice à virgule flottante. EmptyDim 15 Fév 2015, 12:14 par Sachadee

» [developpez.com] Transcodage fichier vidéo si fichier déposé
Calculatrice à virgule flottante. EmptyMar 03 Fév 2015, 01:02 par Sachadee

Flux RSS



Flag Counter
Partenaires
-30%
Le deal à ne pas rater :
LEGO Icons 10318 – Le Concorde à 139,99€
139.99 € 198.99 €
Voir le deal

Calculatrice à virgule flottante.

3 participants

Aller en bas

Calculatrice à virgule flottante. Empty Calculatrice à virgule flottante.

Message par Dylan Gadacha Lun 09 Déc 2013, 02:50

Salut Exclamation 

Aujourd'hui, je poste mon premier programme avec une "vraie" GUI, donc je suis assez fier.
Il s'agit d'une petite calculatrice, histoire de concurrencer notre Fred (BBat attend ton retour avec impatience Sad ), mais surtout de montrer la facilité du langage.

Ceci est une version très minimaliste, car il y a encore beaucoup de chose à améliorer:

- Gérer plus de 2 nombres.
- Gérer les expression numériques.
- Ajouter des fonctions mathématiques. (Mode Scientifique)
- Ajouter un menu Options. (Les couleurs, le nombre de chiffres après la virgule...)

La calculatrice:

[Vous devez être inscrit et connecté pour voir ce lien]

Le code:

Code:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

; // Centrage de la GUI à l'écran //
$Pos_Largeur = (@DesktopWidth - 168)/2
$Pos_Hauteur = (@DesktopHeight - 238)/2

Local $CalcText1 = ""
Local $CalcText2 = ""
Local $Nombre = 1
Local $Operation = ""

$GUI = GUICreate("Calculatrice", 168, 238, $Pos_Largeur, $Pos_Hauteur)
GUISetBkColor(0x33CCFF, $GUI)
$NoFocus = GUICtrlCreateLabel("", 0, 0, 0, 0)
; // Bouton Difference //
$ButtonDifference = GUICtrlCreateButton("-", 128, 160, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
GUICtrlSetState($NoFocus, $GUI_FOCUS)
; // Bouton Addition //
$ButtonAddition = GUICtrlCreateButton("+", 128, 200, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Bouton Division //
$ButtonDivision = GUICtrlCreateButton("/", 128, 80, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Bouton Multiplication //
$ButtonMultiplication = GUICtrlCreateButton("*", 128, 120, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Bouton 08 //
$Button08 = GUICtrlCreateButton("8", 48, 80, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 09 //
$Button09 = GUICtrlCreateButton("9", 88, 80, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 04 //
$Button04 = GUICtrlCreateButton("4", 8, 120, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 05 //
$Button05= GUICtrlCreateButton("5", 48, 120, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 06 //
$Button06 = GUICtrlCreateButton("6", 88, 120, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 07 //
$Button07 = GUICtrlCreateButton("7", 8, 80, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 00 //
$Button00 = GUICtrlCreateButton("0", 8, 200, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 01 //
$Button01 = GUICtrlCreateButton("1", 8, 160, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 02 //
$Button02 = GUICtrlCreateButton("2", 48, 160, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton 03 //
$Button03 = GUICtrlCreateButton("3", 88, 160, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton Virgule
$ButtonVirgule = GUICtrlCreateButton(".", 48, 200, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x0000FF)
; // Bouton Egale //
$ButtonEqual = GUICtrlCreateButton("=", 88, 200, 32, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Bouton AC //
$ButtonAC = GUICtrlCreateButton("AC", 8, 40, 72, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Boutton OFF //
$ButtonOff = GUICtrlCreateButton("OFF", 88, 40, 72, 32)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetColor(-1, 0x000080)
; // Zone de Texte //
$TextBox = GUICtrlCreateInput("", 8, 8, 152, 26, 2)
GUICtrlSetFont(-1, 16, 1, "Arial")
GUICtrlSetState(-1, $GUI_DISABLE)

GUISetState(@SW_SHOW)

While 1
   $Controle = GUIGetMsg()
   Switch $Controle
      Case $GUI_EVENT_CLOSE
         Exit
      Case $ButtonOff
         Exit
      Case $Button00
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "0"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "0"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button01
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "1"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "1"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button02
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "2"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "2"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button03
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "3"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "3"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button04
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "4"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "4"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button05
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "5"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "5"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button06
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "6"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "6"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button07
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "7"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "7"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button08
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "8"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "8"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button09
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "9"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "9"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $Button00
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "0"
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "0"
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $ButtonVirgule
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Nombre = 1 Then
            $CalcText1 = $CalcText1 & "."
            GUICtrlSetData($TextBox, $CalcText1)
         Else
            $CalcText2 = $CalcText2 & "."
            GUICtrlSetData($TextBox, $CalcText2)
         EndIf
      Case $ButtonAC
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
          GUICtrlSetData($TextBox, "")
         Local $CalcText1 = ""
         Local $CalcText2 = ""
         Local $Nombre = 1
         Local $Operation = ""
      Case $ButtonAddition
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
            Local $Operation = 1
            Local $Nombre = 2
         GUICtrlSetData($TextBox, "")
      Case $ButtonDifference
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
            Local $Operation = 2
            Local $Nombre = 2
         GUICtrlSetData($TextBox, "")
      Case $ButtonMultiplication
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
            Local $Operation = 3
            Local $Nombre = 2
         GUICtrlSetData($TextBox, "")
      Case $ButtonDivision
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
            Local $Operation = 4
            Local $Nombre = 2
         GUICtrlSetData($TextBox, "")
      Case $ButtonEqual
         GUICtrlSetState($NoFocus, $GUI_FOCUS)
         If $Operation = 1 Then Local $Resultat = $CalcText1 + $CalcText2
         If $Operation = 2 Then Local $Resultat = $CalcText1 - $CalcText2
         If $Operation = 3 Then Local $Resultat = $CalcText1 * $CalcText2
         If $Operation = 4 Then Local $Resultat = $CalcText1 / $CalcText2
         Local $Arround = Round($Resultat, 2)
         GUICtrlSetData($TextBox, $Arround)
   EndSwitch
WEnd
Téléchargement: [Vous devez être inscrit et connecté pour voir ce lien]

Disponible également sur le Drive.

Dylan.


Dernière édition par Dylan Gadacha le Mer 11 Déc 2013, 08:30, édité 1 fois
Dylan Gadacha
Dylan Gadacha
EQUIPE BBAT
EQUIPE BBAT

Mensagens : 106
Data de inscrição : 24/10/2013
Idade : 25

Revenir en haut Aller en bas

Calculatrice à virgule flottante. Empty Re: Calculatrice à virgule flottante.

Message par Sachadee Lun 09 Déc 2013, 10:15

Bravo !!!! Calculatrice à virgule flottante. 1921957318
Sachadee
Sachadee
Admin
Admin

Mensagens : 591
Data de inscrição : 04/06/2013

https://bbat.forumeiro.com

Revenir en haut Aller en bas

Calculatrice à virgule flottante. Empty Re: Calculatrice à virgule flottante.

Message par Delmar Grande Jeu 12 Déc 2013, 11:42

Calculatrice à virgule flottante. 2150112283  Very good is it!
Delmar Grande
Delmar Grande
EQUIPE BBAT
EQUIPE BBAT

Mensagens : 170
Data de inscrição : 14/06/2013
Localização : Devant le pc

http://dbatchscript.forumeiros.com/

Revenir en haut Aller en bas

Calculatrice à virgule flottante. Empty Re: Calculatrice à virgule flottante.

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum