Page 1 sur 1

[R] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 17:37
par Utilisateur 3309 supprimé
bonjour a tous,
j'ai découvert Autoit cet après midi et je commence a m'exercer un peu avec les GUI.
Pour cela je suis en train de faire un petit exercice tout simple, je suis tombé sur une page type "pipotron" sur internet
et j'essaie donc de reproduire la même chose avec Autoit.

Voici donc mon code:

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Générateur d'excuses V1.0", 830, 620, 191, 202)
$Group1 = GUICtrlCreateGroup("Générateur d'excuses bidons", 8, 8, 809, 601)
$Button1 = GUICtrlCreateButton("Générer", 320, 440, 153, 25, $WS_GROUP)
$List1 = GUICtrlCreateList("", 24, 40, 113, 84)
GUICtrlSetData(-1, "En pleine nuit |Hier soir |Tard dans la nuit |Tôt dans la matinée |Vers 4h00 du matin ")
$List2 = GUICtrlCreateList("", 152, 40, 113, 97)
GUICtrlSetData(-1, "alors que |au moment où |cependant que |comme |pendant que |tandis que ")
$List3 = GUICtrlCreateList("", 280, 40, 417, 123)
GUICtrlSetData(-1, "je dormais après avoir relu pour la 3eme fois la Comédie humaine de Balzac |je faisais un somme après avoir fini de traduire Guerre et Paix en Mandarin |je me reposais après avoir pratiqué 2h intenses de Squash |je m"&Chr(39)&"étais assoupi sur la brillante émission "&Chr(39)&"Chasse et Pêche"&Chr(39)&" |je m"&Chr(39)&"étais assoupi sur une des oeuvres passionnantes de Friedrich Wilheim Nietzsche |je m"&Chr(39)&"étais endormis sur un article fort intéressant du Herald Tribune |je sommeillais en attendant de me lever pour mon footing quotidien de 5h du matin |je somnollais après avoir passé en revue une étude du Figaro économique ")
$List4 = GUICtrlCreateList("", 24, 184, 121, 71)
GUICtrlSetData(-1, "ma vieille grand-mère |mon chat |mon chien |mon péroquet ")
$List5 = GUICtrlCreateList("", 160, 184, 217, 110)
GUICtrlSetData(-1, "a appuyé par mégarde sur le bouton OFF de |a effleuré par inadvertance le Snooze de |a fait tomber dans la baignoire |a joué avec le fil électrique de |a rebooté |a renversé du Coca sur |s"&Chr(39)&"est pris les pates dans le fil électrique de ")
$List6 = GUICtrlCreateList("", 392, 184, 305, 32)
GUICtrlSetData(-1, "mon radio-réveil qui n"&Chr(39)&"a donc pas sonné, et ce n"&Chr(39)&"est ")
$List7 = GUICtrlCreateList("", 24, 312, 497, 110)
GUICtrlSetData(-1, "qu"&Chr(39)&"après l"&Chr(39)&"entrée fracassante de la SPA |qu"&Chr(39)&"au moment où les huissiers (venus pour le voisin) ont enfoncé la porte |qu"&Chr(39)&"au moment où les pompes-funèbres (venues chercher ma belle-mère) ont sonné à la porte |qu"&Chr(39)&"avec la visite d"&Chr(39)&"un représentant du Téléthon venu me remercier pour mon généreux don de la veille |qu"&Chr(39)&"avec l"&Chr(39)&"arrivée du SAMU, venu chercher ma grand-mère |que lorsque les pompiers sont entrés en hurlant "&Chr(39)&"AU FEU!"&Chr(39)&" |que quand le plombier est venu réparer l"&Chr(39)&"inondation ")
$List8 = GUICtrlCreateList("", 536, 312, 265, 71)
GUICtrlSetData(-1, "que j"&Chr(39)&"ai bondi hors de mon lit pour me ruer au bureau |que j"&Chr(39)&"ai réalisé qu"&Chr(39)&"il était trop tard pour venir au bureau ce matin |que j"&Chr(39)&"ai repris connaissance |que je me suis réveillé ")
$Edit1 = GUICtrlCreateEdit("", 24, 480, 777, 113)
GUICtrlSetData(-1, "")
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            $excuse = GUICtrlRead($list1) & GUICtrlRead($list2) & GUICtrlRead($list3) & GUICtrlRead($list4) & GUICtrlRead($list5) & GUICtrlRead($list6) & GUICtrlRead($list7) & GUICtrlRead($list8)
            GUICtrlSetData ($Edit1, $excuse)
    EndSwitch
WEnd
 
Pour générer une excuse il suffit donc de cliquer dans chacune des listbox et de cliquer sur Générer. :D
L'idéal serait de cliquer sur le bouton générer et qu'une excuse soit générée de manière aléatoire, mais comment faire :?:

2eme question, je n'arrive pas a passer à la ligne en ajoutant des @CR dans $excuse comme ci-dessous:

Code : Tout sélectionner

$excuse = GUICtrlRead($list1) & GUICtrlRead($list2) & GUICtrlRead($list3) & @CR & GUICtrlRead($list4) & GUICtrlRead($list5) & GUICtrlRead($list6) & @CR & GUICtrlRead($list7) & GUICtrlRead($list8)
Pourquoi ?

Merci pour votre aide ! :wink:

Re: [..] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 17:41
par bloodwolff
Met tout tes excuses à l'intérieur d'un Tableau et utilise la commande Random()

Re: [..] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 17:46
par Utilisateur 3309 supprimé
Maxriou....du forum Hersys :shock:

je vais voir pour le tableau et pour le random.
As tu une idée pour le problème de passage à la ligne ? (j'ai edité le 1er post)
Merci.

Re: [..] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 17:53
par bloodwolff
Maxriou....du forum Hersys :shock:
Cela ne me dis rien mais bon je m'inscris tellement n'importe où :lol:

Dans les Edits les @cr ou @lf ne fonctionne pas , il faut utiliser @crlf

Re: [..] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 18:30
par Utilisateur 3309 supprimé
Merci pour le @CRLF 8) ca marche impec.

Je regarde pour le reste...

Re: [..] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 19:27
par Utilisateur 3309 supprimé
Voilà la version 2 boutons Auto/manuel, ca marche impec, je dois dire que je suis fier de moi :lol:
Ce langage de programmation est super :mrgreen: arriver a ca en quelques heures ca promet !

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>


Local $Array1[4]
$array1[0] = "En pleine nuit "
$array1[1] = "Tard dans la nuit "
$array1[2] = "Tôt dans la matinée "
$array1[3] = "Vers 4h00 du matin "

Local $Array2[6]
$array2[0] = "alors que "
$array2[1] = "au moment où "
$array2[2] = "cependant que "
$array2[3] = "comme "
$array2[4] = "pendant que "
$array2[5] = "tandis que "

Local $Array3[8]
$array3[0] = "je dormais après avoir relu pour la 3eme fois la Comédie humaine de Balzac "
$array3[1] = "je faisais un somme après avoir fini de traduire Guerre et Paix en Mandarin "
$array3[2] = "je me reposais après avoir pratiqué 2h intenses de Squash "
$array3[3] = "je m"&Chr(39)&"étais assoupi sur la brillante émission "&Chr(39)&"Chasse et Pêche"&Chr(39)
$array3[4] = "je m"&Chr(39)&"étais assoupi sur une des oeuvres passionnantes de Friedrich Wilheim Nietzsche "
$array3[5] = "je m"&Chr(39)&"étais endormis sur un article fort intéressant du Herald Tribune "
$array3[6] = "je sommeillais en attendant de me lever pour mon footing quotidien de 5h du matin "
$array3[7] = "je somnollais après avoir passé en revue une étude du Figaro économique "

Local $Array4[4]
$array4[0] = "ma vieille grand-mère "
$array4[1] = "mon chat "
$array4[2] = "mon chien "
$array4[3] = "mon péroquet "

Local $Array5[7]
$array5[0] = "a appuyé par mégarde sur le bouton OFF de "
$array5[1] = "a effleuré par inadvertance le Snooze de "
$array5[2] = "a fait tomber dans la baignoire "
$array5[3] = "a joué avec le fil électrique de "
$array5[4] = "a rebooté "
$array5[5] = "a renversé du Coca sur "
$array5[6] = "s"&Chr(39)&"est pris les pates dans le fil électrique de "

Local $Array6[1]
$array6[0] = "mon radio-réveil qui n"&Chr(39)&"a donc pas sonné, et ce n"&Chr(39)&"est "

Local $Array7[7]
$array7[0] = "qu"&Chr(39)&"après l"&Chr(39)&"entrée fracassante de la SPA "
$array7[1] = "qu"&Chr(39)&"au moment où les huissiers (venus pour le voisin) ont enfoncé la porte "
$array7[2] = "qu"&Chr(39)&"au moment où les pompes-funèbres (venues chercher ma belle-mère) ont sonné à la porte "
$array7[3] = "qu"&Chr(39)&"avec la visite d"&Chr(39)&"un représentant du Téléthon venu me remercier pour mon généreux don de la veille "
$array7[4] = "qu"&Chr(39)&"avec l"&Chr(39)&"arrivée du SAMU, venu chercher ma grand-mère "
$array7[5] = "que lorsque les pompiers sont entrés en hurlant "&Chr(39)&"AU FEU!"&Chr(39)
$array7[6] = "que quand le plombier est venu réparer l"&Chr(39)&"inondation "

Local $Array8[3]
$array8[0] = "que j"&Chr(39)&"ai bondi hors de mon lit pour me ruer au bureau "
$array8[1] = "que j"&Chr(39)&"ai réalisé qu"&Chr(39)&"il était trop tard pour venir au bureau ce matin "
$array8[2] = "que j"&Chr(39)&"ai repris connaissance |que je me suis réveillé "


#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Générateur d'excuses V1.0", 830, 620, 191, 202)
$Group1 = GUICtrlCreateGroup("Générateur d'excuses bidons", 8, 8, 809, 601)
$Button1 = GUICtrlCreateButton("Automatique", 200, 440, 153, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Manuel", 500, 440, 153, 25, $WS_GROUP)
$List1 = GUICtrlCreateList("", 24, 40, 113, 84)
GUICtrlSetData(-1, $array1[0] &"|"& $array1[1] &"|"&  $array1[2] &"|"&  $array1[3])
$List2 = GUICtrlCreateList("", 152, 40, 113, 97)
GUICtrlSetData(-1, $array2[0] &"|"& $array2[1] &"|"&  $array2[2] &"|"&  $array2[3] &"|"&  $array2[4] &"|"&  $array2[5])
$List3 = GUICtrlCreateList("", 280, 40, 417, 123)
GUICtrlSetData(-1, $array3[0] &"|"& $array3[1] &"|"&  $array3[2] &"|"&  $array3[3] &"|"&  $array3[4] &"|"&  $array3[5] &"|"&  $array3[6] &"|"&  $array3[7])
$List4 = GUICtrlCreateList("", 24, 184, 121, 71)
GUICtrlSetData(-1, $array4[0] &"|"& $array4[1] &"|"&  $array4[2] &"|"&  $array4[3])
$List5 = GUICtrlCreateList("", 160, 184, 217, 110)
GUICtrlSetData(-1, $array5[0] &"|"& $array5[1] &"|"&  $array5[2] &"|"&  $array5[3] &"|"&  $array5[4] &"|"&  $array5[5] &"|"&  $array5[6])
$List6 = GUICtrlCreateList("", 392, 184, 305, 32)
GUICtrlSetData(-1, $array6[0])
$List7 = GUICtrlCreateList("", 24, 312, 497, 110)
GUICtrlSetData(-1, $array7[0] &"|"& $array7[1] &"|"&  $array7[2] &"|"&  $array7[3] &"|"&  $array7[4] &"|"&  $array7[5] &"|"&  $array7[6])
$List8 = GUICtrlCreateList("", 536, 312, 265, 71)
GUICtrlSetData(-1, $array8[0] &"|"& $array8[1] &"|"&  $array8[2])
$Edit1 = GUICtrlCreateEdit("", 24, 480, 777, 113)
GUICtrlSetData(-1, "")
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            ;$excuse = GUICtrlRead($list1) & GUICtrlRead($list2) & GUICtrlRead($list3) & @CRLF & GUICtrlRead($list4) & GUICtrlRead($list5) & GUICtrlRead($list6) & @CRLF & GUICtrlRead($list7) & @CRLF & GUICtrlRead($list8)
                        $excuse = $array1[Random(0,3,1)] &  $array2[Random(0,5,1)] &  $array3[Random(0,7,1)]  & @CRLF &  $array4[Random(0,3,1)] &  $array5[Random(0,6,1)] &  $array6[0]  & @CRLF &   $array7[Random(0,6,1)]  & @CRLF &   $array8[Random(0,2,1)]
            GUICtrlSetData ($Edit1, $excuse)
        Case $Button2
            $excuse = GUICtrlRead($list1) & GUICtrlRead($list2) & GUICtrlRead($list3) & @CRLF & GUICtrlRead($list4) & GUICtrlRead($list5) & GUICtrlRead($list6) & @CRLF & GUICtrlRead($list7) & @CRLF & GUICtrlRead($list8)
            GUICtrlSetData ($Edit1, $excuse)
    EndSwitch
WEnd
 

Re: [..] Générateur d'excuses bidon aléatoire  

Posté : lun. 20 déc. 2010 19:35
par bloodwolff
Utilise cette fonction
► Afficher le texte

Re: [R] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 19:42
par Utilisateur 3309 supprimé
Pas mal !!!
Merci.

Re: [R] Générateur d'excuses bidon aléatoire

Posté : lun. 20 déc. 2010 21:19
par cutprod
:lol: :lol: J'adore ca!!
Ce script m'aurais été bien utile a collège!

Re: [R] Générateur d'excuses bidon aléatoire

Posté : mar. 15 févr. 2011 10:10
par ZOTHOP
cutprod a écrit ::lol: :lol: J'adore ca!!
Ce script m'aurais été bien utile a collège!
Il peut être utile maintenant, au travail ! :lol:

Re: [R] Générateur d'excuses bidon aléatoire

Posté : jeu. 23 juin 2011 18:22
par MisterASUS
J'ai trouver une faute ^^"

dans la fin du script pour le dernier morceau de phrase, il faut mettre:
► Afficher le texte

Re: [R] Générateur d'excuses bidon aléatoire

Posté : jeu. 23 juin 2011 22:16
par TT22
Super script, je crois qu'il va beaucoup me servir :lol: