AutoIt Français

Nouveau forum : http://www.autoitscript.fr/
 
AccueilFAQRechercherS'enregistrerMembresGroupesConnexionhttp://www.autoitscript.fr

Partagez | 
 

 Ajouter des point entre des valeurs [resolu]

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Max485
Membre avancé


Nombre de messages : 53
Date d'inscription : 06/07/2007

MessageSujet: Ajouter des point entre des valeurs [resolu]   2007-07-24, 23:41

voila je vien de créer un systeme qui doit calculer un nombre, bon c'est pour unjeu, parce que j'en ai marre de devoir toujours recalculer a la main

voila le autoit

[code]
HotKeySet("{f1}","total")
HotKeySet("{ESC}","rec")
HotKeySet("{tab}","nb")

sleep(3000)

; Nombre de sat total a faire
Func total() ; inscrire le nombre de sat total a faire dans un un fichier ini
$sat_inputbox_total = InputBox ( "Nombre de Satellite solaire a faire","indiquer le nombre de Satellite solaire que vous devez construire" )
IniWrite ( "scan.ini", "graviton_sat", "nombre_a_faire", $sat_inputbox_total)
rec()
EndFunc

Func rec() ; inscrire le nombre de sat dans un un fichier ini
$sat_inputbox = InputBox ( "Nombre de Satellite solaire","indiquer le nombre de Satellite solaire que vous possedez" )
IniWrite ( "scan.ini", "graviton_sat", "nombre_fait", $sat_inputbox)
nb()
EndFunc

func nb()
$sat_total = IniRead("scan.ini", "graviton_sat", "nombre_a_faire", "")
$sat_fait = IniRead("scan.ini", "graviton_sat", "nombre_fait", "")
$sat_restant = $sat_total - $sat_fait
$cristal = 2000 * $sat_restant
$deut = 500 * $sat_restant
MsgBox(0,"Vos besoins","Nombre de ressources dont vous avez besoin:" & @CRLF & "Cristal: " & $cristal & @CRLF & "Deuterium: " & $deut)
EndFunc
Exit
[/code]

il marche parfaitement, mais j'aimerais que le resultat final, ai des point de ce styla 123.123.123, voila que tous les 3 nombre un point

et si il y avais possibilité d'ecrire le 2000 avec des point aussi, et que ca les enleve pour calculer, dans le script sa serait pas mal,

et puis je voudrait pouvoir envoyer dans le presse papirt, ce qui se trouve dans la msgbox de la fin est ce possible ??

merci de rep

a+

bonnne journée


Dernière édition par le 2007-07-25, 15:56, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 00:41

Avant de me coucher , voici une fonction permettant de reformatter ta chîne, mais doit y avoir plus simple, là j'ai vraiment fait lourd, mais à cette heure là ...



[code]
ConsoleWrite(convert_point(2000123 ) )

func convert_point($nbr)
local $local_str,$local_modulo,$local_reste,$local_longueur,$local_indice,$local_sortie=""
if IsString($nbr) Then
$local_str=$nbr
Else
$local_str=String($nbr)
EndIf
$local_longueur=StringLen($local_str)
$local_reste=Mod($local_longueur,3)
$local_modulo=($local_longueur-$local_reste)/3
For $local_indice=$local_modulo To 1 Step -1
$local_sortie="."&StringMid($local_str,3*($local_indice-1)+$local_reste+1,3)&$local_sortie
Next
$local_sortie=StringMid($local_str,1,$local_reste)&$local_sortie
If $local_reste=0 Then $local_sortie=StringTrimLeft($local_sortie,1)
Return $local_sortie
EndFunc
[/code]

en gros je reconstruit une chaîne en partant de la fin et tous les 3 caractères je mets un point et à la fin je vérifie qu'on n'est pas dans un cas d'une chaîne de longueure multiple de 3 et dans ce cas j'enlève un . au début qui est en trops


pour le clipboard, fait un ClipPut de la variable que tu envoies dans la msgbox

Bonne nuit, et à après demain
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Max485
Membre avancé


Nombre de messages : 53
Date d'inscription : 06/07/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 14:44

ouaou ta chaine est compliquer, la jy arrive pas, il doit falloir que je l ajuste pour mes valeur, mais je trouve pas les truc a changer

si tu pouvais m aider davantage stp

merci

bonne aprem
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
ani
Modérateur
Modérateur


Nombre de messages : 563
Date d'inscription : 23/01/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 15:16

salut max485 a quel endroit tu ne (suit)comprend pas ?

tu veux retourner la valeur x.000 dans le msgbox ?

la fonction faite par sylvanie retourne la valeur dans la 'console' de scite avec consolewrite()

ce qui suit est la cmd a indiquer à l'endroit voulu convert_point(tavaleur).


merci
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Max485
Membre avancé


Nombre de messages : 53
Date d'inscription : 06/07/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 15:56

Apres que tu m'ai dit ca, je vien de mettre la chaine dans un fichier et toute seul

Voila j'ai simplement mis un message box

[code]
MsgBox(0,"Vos besoins", convert_point($cristal ) )
[/code]

en mettant de la meme maniere que ca ConsoleWrite (qui elle ne faisait rien d'apparant,)


puis j ai supprimer consolewrite ca marche

plus qu'a modifier mon script et a ajouter ca

aller merci a vous 2

++
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
ani
Modérateur
Modérateur


Nombre de messages : 563
Date d'inscription : 23/01/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 16:21

[quote]en mettant de la meme maniere que ca ConsoleWrite (qui elle ne faisait rien d'apparant,)[/quote]

normalement dans scite t'a les tab pour les script et une fenetre en bas (que certain appel debug) qui affiche le lancement du script les erreur eventuel et divers information demandé par l'utilisateur.


le test effectué avec la fonction de sylvanie dans le debug normalement tu devrai voir ceux-ci

>"C:Program FilesAutoIt3betaSciTE..autoit3.exe" /ErrorStdOut "G:AU3AutoiT_FR.au31111.au3"
2.000.123>Exit code: 0 Time: 0.877

y a bien la valeur donné au dessus (2000123 ) transformé


Pour le presse papier = clipput comme la signalé sylvanie

tu voudrai l'envoier ou ? notepad (quel version)


exemple qui utilise la version notepad2
$var = ClipPut("I am copied to the clipboard")
run("notepad /c" & $var)


le commutateur /C sert ici a envoier ce qui se trouve dans le presse papier ,,, y a d'autre commutateur

pour les connaitres cmd sous dos nom du logiciel /?
démarrer/excecuter/cmd puis taper notepad/?
ou
démarrer /executer/notepad /?



ps:zutzut j'avais pas capté que c'était résolu :§
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Max485
Membre avancé


Nombre de messages : 53
Date d'inscription : 06/07/2007

MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   2007-07-25, 17:43

Pour le Clipput, c est bon il ma donner la commande, j ai trouver comment faire, enfin j ai pas essayer, mais si c'est comme le clipget, c'est bon, mais je veut juste copier, pour pouvoir coller que si on veut

merci de tes info

allez ++

bonne soirée
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Ajouter des point entre des valeurs [resolu]   Aujourd'hui à 16:30

Revenir en haut Aller en bas
 
Ajouter des point entre des valeurs [resolu]
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» comment ajouter un espace entre 2 tableaux bordure arrondi?
» Ajouter du texte dans un textbox . [ RESOLU ]
» Powerpoint 2007 1-d créer un arrière plan personnalisé
» coordonnées sur garmin 1340
» Ajouter un espace entre les postes de réponse

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
AutoIt Français :: AutoIt v3 :: Entraide-
Sauter vers: