Page 1 sur 1

assistance de création de boîte de dialogue pour pure basic

Publié : mer. 18/nov./2009 16:27
par dayvid
et voila un chti programme pour faire des boites de dialogue sans ce casser la tête
je pence que cella peut bien servire, mois même je l'utilise

http://www.up-this.com/fr/dl.html?fid=6F6729BEE9B8

Re: assistance de création de boîte de dialogue pour pure basic

Publié : mar. 01/déc./2009 3:32
par Ar-S
Une ou des chtites captures d'écrans ? allez vas-y donc, donne nous envie d'essayer ton logiciel :D !

Re: assistance de création de boîte de dialogue pour pure basic

Publié : sam. 05/déc./2009 15:56
par dayvid
dison que tu peut aussie le télécharger par le lien 8)

Re: assistance de création de boîte de dialogue pour pure basic

Publié : dim. 06/déc./2009 0:36
par case
disons que si on devais tout télécharger sans regarder avant on aurais nos disques durs bien pleins et pas que de belles choses :twisted:

ca ressemble a quoi tes boites de dialogue ? :D
une ptite copie d'écran 8) ?

Re: assistance de création de boîte de dialogue pour pure basic

Publié : dim. 06/déc./2009 5:22
par Backup
oui pis tant qu'a faire tu peux aussi laisser ton source ici
parceque si c'est pour faire des boites de dialogues, ton code
ne dois pas etre top secret , en principe c'est meme a la portée de n'imp...

mais c'est comme tu veux, parcequ'en fait, je pense qu'on pourra faire sans hein.. ;)

Re: assistance de création de boîte de dialogue pour pure basic

Publié : dim. 06/déc./2009 8:15
par jbernard13

Re: assistance de création de boîte de dialogue pour pure basic

Publié : mer. 09/déc./2009 18:32
par dayvid
ouais mais le line marche plus
et puis sinon pour le souce veut bien le donner mais voila quoi
enfin bref je vais le mêtre si sa en chante certain

si sa peut servir !

http://www.up-this.com/fr/dl.html?fid=B282FF982F8A

Re: assistance de création de boîte de dialogue pour pure basic

Publié : mer. 09/déc./2009 19:40
par venom
désolé pour le lien je n'est plus l'exécutable ni la source :? c'est dommage je le referais peut etre un de ces 4

[EDIT]
je l'est retrouvé mais plus compatible pb4

Code : Tout sélectionner

;- -------------------------------------
;- Générateur MessageRequester
;- Necro et Venom
;- le 04/11/2008 en purebasic 4.20
;- -------------------------------------

;- Window Constants
Enumeration
  #windows_0
EndEnumeration

;- Gadget Constants
Enumeration
  #Frame_0
  #String_titre
  #String_message
  #Frame_1
  #Text_0_deusiemeetape
  #Text_1_deusiemeetape
  #Radio_OK
  #Radio_OUINON
  #Radio_OUINONANNULER
  #Radio_ICONE1
  #Button_ICONE1
  #Radio_ICONE2
  #Button_ICONE2
  #Radio_ICONE3
  #Button_ICONE3
  #Radio_ICONE4
  #Frame_3
  #String_AFFICHELECODE
  #Button_APPERCU
  #Button_COPIER
EndEnumeration

;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Comic Sans MS", 10, #PB_Font_Bold) ;- on choisis une police de caractere
chemain$ = Left(GetHomeDirectory(), 3) + "WINDOWS\explorer.exe" ;- on montre le chemain ou se trouve les icones
Count = IconExtract(chemain$, -1) ;- on extrait les icones

;- on ouvre la fenetre ainci que les gadgets
If OpenWindow(#windows_0, 0, 0, 600, 355, "GMRequester", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
  If CreateGadgetList(WindowID(#windows_0))
    
    Frame3DGadget(#Frame_0, 10, 10, 580, 100, "etape 1", 0)
    StringGadget(#String_titre, 20, 30, 560, 20, "Titre de votre MessageRequester...")
    StringGadget(#String_message, 20, 70, 560, 20, "Message a afficher...")
    
    Frame3DGadget(#Frame_1, 10, 120, 580, 150, "etape 2", 0)
    TextGadget(#Text_0_deusiemeetape, 20, 140, 560, 20, "Boutons a mettre dans le MessageRequester", #PB_Text_Center)
    SetGadgetFont(#Text_0_deusiemeetape, FontID1)
    TextGadget(#Text_1_deusiemeetape, 20, 190, 560, 20, "icone a mettre dans le MessageRequester", #PB_Text_Center)
    SetGadgetFont(#Text_1_deusiemeetape, FontID1)
    OptionGadget(#Radio_OK, 20, 160, 130, 20, "Afficher le bouton OK")
    OptionGadget(#Radio_OUINON, 168, 160, 160, 20, "Afficher les boutons OUI / NON")
    OptionGadget(#Radio_OUINONANNULER, 348, 160, 230, 20, "Afficher les boutons OUI / NON / ANNULER")
    CheckBoxGadget(#Radio_ICONE1, 20, 230, 20, 20, "")
    ImageGadget(#Button_ICONE1, 40, 225, 48, 48, IconExtract(chemain$, 7))
    CheckBoxGadget(#Radio_ICONE2, 180, 230, 20, 20, "")
    ImageGadget(#Button_ICONE2, 200, 225, 48, 48, IconExtract(chemain$, 8))
    CheckBoxGadget(#Radio_ICONE3, 358, 230, 20, 20, "")
    ImageGadget(#Button_ICONE3, 380, 225, 48, 48, IconExtract(chemain$, 9))
    CheckBoxGadget(#Radio_ICONE4, 528, 230, 20, 20, "")
    SetGadgetState(#Radio_OK, 1) ;- permet de selectionner le gadget #Radio_OK
    SetGadgetState(#Radio_ICONE4, 1) ;- permet de selectionner le gadget #Radio_ICONE4
    Frame3DGadget(#Frame_3, 10, 280, 580, 60, "etape 3", 0)
    ButtonGadget(#Button_APPERCU, 20, 305, 185, 20, "Aperçu du MessageRequester")
    ButtonGadget(#Button_COPIER, 390, 305, 185, 20, "Copier le code dans le presse papier")
    StringGadget(#String_AFFICHELECODE, 0, 370, 10, 20, "", #PB_String_ReadOnly) ;- #PB_String_ReadOnly permet de crée un stringgadget mais seulement en lecture et non pas en ecriture
    
  EndIf
EndIf

;- on ouvre la boucle d'evenement
Repeat
  EventID = WaitWindowEvent()
  If EventID = #PB_Event_Gadget
    Select EventGadget()
        
      Case #Radio_ICONE1 ;- cette fonction permet de lancer #Radio_ICONE1 quand on clic dessus
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
        
      Case #Radio_ICONE2 ;- cette fonction permet de lancer #Radio_ICONE2 quand on clic dessu
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
        
      Case #Radio_ICONE3 ;- cette fonction permet de lancer #Radio_ICONE3 quand on clic dessus
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
        
      Case #Radio_ICONE4 ;- cette fonction permet de lancer #Radio_ICONE4 quand on clic dessus
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
        
      Case #Button_APPERCU ;- cette fonction permet de lancer #Button_APPERCU quand on clic dessus
        ;- message OK
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok)
        EndIf
        
        ;- message OUI NON
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo)
        EndIf
        
        ;- message OUI NON ANNULER
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel)
        EndIf
        
      Case #Button_COPIER ;- cette fonction permet de lancer #Button_COPIER quand on clic dessus
        
        ;- message OK
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok)")
        EndIf
        
        ;- message OUI NON
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo)")
        EndIf
        
        ;- message OUI NON ANNULER
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel)")
        EndIf
        
        Resultat$ = GetGadgetText(#String_AFFICHELECODE) ;- on verrifie l'etat du #String_AFFICHELECODE si il y a du texte ou non
        If Resultat$ ;- si oui on continue
          ClearClipboard() ;- on vide le presse papier
          SetClipboardText(GetGadgetText(#String_AFFICHELECODE)) ;- ensuite on copie le contenue du #String_AFFICHELECODE dans le presse papier
          MessageRequester("information", "Voila le code vien d'étre copier dans le presse papier. Clic droit puis coller pour le placez ou vous le souhaitez.", 0) ;- messagebox pour prevenir que sa a bien etait copier
          EventID = #PB_Event_CloseWindow ;- du coup on ferme le logiciel
        Else ;- par contre si le #String_AFFICHELECODE est vide
          MessageRequester("information", "Il n'y a rien a copier dans le presse papier. Verifiez si vous avez bien appuiez sur le bouton Générer le code pour purebaisc avant de continuer", #MB_ICONWARNING) ;- on met un messagebox pour prevenir que rien n'a pu etre copier dans le presse papier
        EndIf ;- on laisse donc l'application ouverte pour corriger le probleme
        
    EndSelect
  EndIf
Until EventID = #PB_Event_CloseWindow ;- ferme l'application quand ont appuie sur la croix rouge
voilou





@++

Re: assistance de création de boîte de dialogue pour pure basic

Publié : mer. 09/déc./2009 23:30
par PAPIPP
Merci venon
voici le code pour PB440

Code : Tout sélectionner

;- -------------------------------------
;- Générateur MessageRequester
;- Necro et Venom
;- le 04/11/2008 en purebasic 4.20
;- -------------------------------------
Procedure IconExtract(File.s,Icon.l)
  ProcedureReturn ExtractIcon_(0,File,Icon)
EndProcedure

;- Window Constants
Enumeration
  #windows_0
EndEnumeration

;- Gadget Constants
Enumeration
  #Frame_0
  #String_titre
  #String_message
  #Frame_1
  #Text_0_deusiemeetape
  #Text_1_deusiemeetape
  #Radio_OK
  #Radio_OUINON
  #Radio_OUINONANNULER
  #Radio_ICONE1
  #Button_ICONE1
  #Radio_ICONE2
  #Button_ICONE2
  #Radio_ICONE3
  #Button_ICONE3
  #Radio_ICONE4
  #Frame_3
  #String_AFFICHELECODE
  #Button_APPERCU
  #Button_COPIER
EndEnumeration

;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Comic Sans MS", 10, #PB_Font_Bold) ;- on choisis une police de caractere
chemain$ = Left(GetHomeDirectory(), 3) + "WINDOWS\explorer.exe" ;- on montre le chemain ou se trouve les icones
Count = IconExtract(chemain$, -1) ;- on extrait les icones

;- on ouvre la fenetre ainci que les gadgets
If OpenWindow(#windows_0, 0, 0, 600, 355, "GMRequester", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
  If CreateGadgetList(WindowID(#windows_0))
   
    Frame3DGadget(#Frame_0, 10, 10, 580, 100, "etape 1", 0)
    StringGadget(#String_titre, 20, 30, 560, 20, "Titre de votre MessageRequester...")
    StringGadget(#String_message, 20, 70, 560, 20, "Message a afficher...")
   
    Frame3DGadget(#Frame_1, 10, 120, 580, 150, "etape 2", 0)
    TextGadget(#Text_0_deusiemeetape, 20, 140, 560, 20, "Boutons a mettre dans le MessageRequester", #PB_Text_Center)
    SetGadgetFont(#Text_0_deusiemeetape, FontID1)
    TextGadget(#Text_1_deusiemeetape, 20, 190, 560, 20, "icone a mettre dans le MessageRequester", #PB_Text_Center)
    SetGadgetFont(#Text_1_deusiemeetape, FontID1)
    OptionGadget(#Radio_OK, 20, 160, 130, 20, "Afficher le bouton OK")
    OptionGadget(#Radio_OUINON, 168, 160, 160, 20, "Afficher les boutons OUI / NON")
    OptionGadget(#Radio_OUINONANNULER, 348, 160, 230, 20, "Afficher les boutons OUI / NON / ANNULER")
    CheckBoxGadget(#Radio_ICONE1, 20, 230, 20, 20, "")
    ImageGadget(#Button_ICONE1, 40, 225, 48, 48, IconExtract(chemain$, 7))
    CheckBoxGadget(#Radio_ICONE2, 180, 230, 20, 20, "")
    ImageGadget(#Button_ICONE2, 200, 225, 48, 48, IconExtract(chemain$, 8))
    CheckBoxGadget(#Radio_ICONE3, 358, 230, 20, 20, "")
    ImageGadget(#Button_ICONE3, 380, 225, 48, 48, IconExtract(chemain$, 9))
    CheckBoxGadget(#Radio_ICONE4, 528, 230, 20, 20, "")
    SetGadgetState(#Radio_OK, 1) ;- permet de selectionner le gadget #Radio_OK
    SetGadgetState(#Radio_ICONE4, 1) ;- permet de selectionner le gadget #Radio_ICONE4
    Frame3DGadget(#Frame_3, 10, 280, 580, 60, "etape 3", 0)
    ButtonGadget(#Button_APPERCU, 20, 305, 185, 20, "Aperçu du MessageRequester")
    ButtonGadget(#Button_COPIER, 390, 305, 185, 20, "Copier le code dans le presse papier")
    StringGadget(#String_AFFICHELECODE, 0, 370, 10, 20, "", #PB_String_ReadOnly) ;- #PB_String_ReadOnly permet de crée un stringgadget mais seulement en lecture et non pas en ecriture
   
  EndIf
EndIf

;- on ouvre la boucle d'evenement
Repeat
  EventID = WaitWindowEvent()
  If EventID = #PB_Event_Gadget
    Select EventGadget()
       
      Case #Radio_ICONE1 ;- cette fonction permet de lancer #Radio_ICONE1 quand on clic dessus
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE1 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
       
      Case #Radio_ICONE2 ;- cette fonction permet de lancer #Radio_ICONE2 quand on clic dessu
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE2 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
       
      Case #Radio_ICONE3 ;- cette fonction permet de lancer #Radio_ICONE3 quand on clic dessus
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE4, 0) ;- si #Radio_ICONE3 est cliquer on efface le logo de selection du gadget #Radio_ICONE4
       
      Case #Radio_ICONE4 ;- cette fonction permet de lancer #Radio_ICONE4 quand on clic dessus
        SetGadgetState(#Radio_ICONE1, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE1
        SetGadgetState(#Radio_ICONE2, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE2
        SetGadgetState(#Radio_ICONE3, 0) ;- si #Radio_ICONE4 est cliquer on efface le logo de selection du gadget #Radio_ICONE3
       
      Case #Button_APPERCU ;- cette fonction permet de lancer #Button_APPERCU quand on clic dessus
        ;- message OK
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_Ok)
        EndIf
       
        ;- message OUI NON
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNo)
        EndIf
       
        ;- message OUI NON ANNULER
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONINFORMATION)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONWARNING)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel | #MB_ICONERROR)
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          MessageRequester(GetGadgetText(#String_titre), GetGadgetText(#String_message), #PB_MessageRequester_YesNoCancel)
        EndIf
       
      Case #Button_COPIER ;- cette fonction permet de lancer #Button_COPIER quand on clic dessus
       
        ;- message OK
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OK) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OK et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_Ok)")
        EndIf
       
        ;- message OUI NON
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OUINON) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINON et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNo)")
        EndIf
       
        ;- message OUI NON ANNULER
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE1) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE1 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONINFORMATION)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE2) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE2 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONWARNING)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE3) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE3 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel|#MB_ICONERROR)")
        EndIf
        If GetGadgetState(#Radio_OUINONANNULER) = 1 And GetGadgetState(#Radio_ICONE4) = 1 ;- si le gadget #Radio_OUINONANNULER et selectionner ainci que #Radio_ICONE4 ont cree le messagerequester en fonction
          SetGadgetText(#String_AFFICHELECODE, "MessageRequester(" + Chr(34) + GetGadgetText(#String_titre) + Chr(34) + "," + Chr(34) + GetGadgetText(#String_message) + Chr(34) + "," + "#PB_MessageRequester_YesNoCancel)")
        EndIf
       
        Resultat$ = GetGadgetText(#String_AFFICHELECODE) ;- on verrifie l'etat du #String_AFFICHELECODE si il y a du texte ou non
        If Resultat$ ;- si oui on continue
          ClearClipboard() ;- on vide le presse papier
          SetClipboardText(GetGadgetText(#String_AFFICHELECODE)) ;- ensuite on copie le contenue du #String_AFFICHELECODE dans le presse papier
          MessageRequester("information", "Voila le code vien d'étre copier dans le presse papier. Clic droit puis coller pour le placez ou vous le souhaitez.", 0) ;- messagebox pour prevenir que sa a bien etait copier
          EventID = #PB_Event_CloseWindow ;- du coup on ferme le logiciel
        Else ;- par contre si le #String_AFFICHELECODE est vide
          MessageRequester("information", "Il n'y a rien a copier dans le presse papier. Verifiez si vous avez bien appuiez sur le bouton Générer le code pour purebaisc avant de continuer", #MB_ICONWARNING) ;- on met un messagebox pour prevenir que rien n'a pu etre copier dans le presse papier
        EndIf ;- on laisse donc l'application ouverte pour corriger le probleme
       
    EndSelect
  EndIf
Until EventID = #PB_Event_CloseWindow ;- ferme l'application quand ont appuie sur la croix rouge
A+