Daltonisme

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Avatar de l’utilisateur
kernadec
Messages : 1606
Inscription : ven. 25/avr./2008 11:14

Daltonisme

Message par kernadec »

bonjour
Petit essai sur les couleurs pour modifier
les parametres couleurs

Code : Tout sélectionner

;################################################################
;###  Kernadec le 07/2008                                     ###
;###  Déclinaison de "colorViewer"                            ###
;###  Dialogue pour la modification des parametres couleurs   ###
;################################################################
If OpenWindow(4, 0, 0, 340, 140, "Parametres Couleurs", #PB_Window_MinimizeGadget| #PB_Window_ScreenCentered) 
  If CreateGadgetList(WindowID(4))  
    TextGadget(0, 5, 5, 25, 20, "Roug") 
    TrackBarGadget(1, 35,  5, 265, 20, 0, 255) 
    StringGadget(2, 305, 5, 30, 20, "0", #PB_String_ReadOnly) 
    
    TextGadget(10, 5, 30, 25, 20, "Vert") 
    TrackBarGadget(11, 35, 30, 265, 20, 0, 255) 
    StringGadget(12, 305, 30, 30, 20, "0", #PB_String_ReadOnly) 
    
    TextGadget(20, 5, 55, 25, 20, "Bleu") 
    TrackBarGadget(21, 35, 55, 265, 20, 0, 255) 
    StringGadget(22, 305, 55, 30, 20, "0", #PB_String_ReadOnly) 

    OptionGadget(31, 7, 110, 60, 20,"ROUGE")
    OptionGadget(32, 100, 110, 60, 20,"VERT")
    OptionGadget(33, 192, 110, 60, 20,"BLEU")
    OptionGadget(34, 276, 110, 60, 20,"JAUNE")
  EndIf 
  
  CreateImage(1, 60, 20) 
  CreateImage(2, 60, 20)
  CreateImage(3, 60, 20)
  CreateImage(4, 60, 20)

EndIf 

;#############################################################################################
 
      ; Couleur a l'ouverture du Dialogue exemple :rouge
     
         StartDrawing(ImageOutput(1)) 
         Roug1 = 255:Vert1 = 0:Bleu1 = 0 
         Box(0, 0, 60, 20, RGB(Roug1, Vert1, Bleu1))  
         StopDrawing()
         StartDrawing(ImageOutput(2)) 
         Roug2 = 0:Vert2 = 255:Bleu2= 0
         Box(0, 0, 60, 20, RGB(Roug2, Vert2, Bleu2)) 
         StopDrawing()
         StartDrawing(ImageOutput(3)) 
         Roug3 = 0:Vert3 = 0:Bleu3 = 255
         Box(0, 0, 60, 20, RGB(Roug3, Vert3, Bleu3)) 
         StopDrawing() 
         StartDrawing(ImageOutput(4))
         Roug4 =255:Vert4 = 255:Bleu4 = 0
         Box(0, 0, 60, 20, RGB(Roug4, Vert4, Bleu4)) 
         StopDrawing() 
         
     ;Gadget couleur par defaut avec codes RGB 
     SetGadgetState(31,1)  
     SetGadgetState(1,roug1):SetGadgetState(11,vert1):SetGadgetState(21,bleu1)
     SetGadgetText(2, Str(Roug1)):SetGadgetText(12, Str(Vert1)): SetGadgetText(22, Str(Bleu1))

;#############################################################################################
 
Repeat 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(1), 5, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(2), 95, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(3), 185, 90) 
          StopDrawing()
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(4), 270, 90) 
          StopDrawing()

  EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget 
       Select EventMenu() 
         Case 31
             SetGadgetState(1,roug1):SetGadgetState(11,vert1):SetGadgetState(21,bleu1)
             SetGadgetText(2, Str(Roug1)):SetGadgetText(12, Str(Vert1)): SetGadgetText(22, Str(Bleu1))
         Case 32
             SetGadgetState(1,roug2):SetGadgetState(11,vert2):SetGadgetState(21,bleu2)
             SetGadgetText(2, Str(Roug2)):SetGadgetText(12, Str(Vert2)): SetGadgetText(22, Str(Bleu2))
         Case 33
             SetGadgetState(1,roug3):SetGadgetState(11,vert3):SetGadgetState(21,bleu3)
             SetGadgetText(2, Str(Roug3)):SetGadgetText(12, Str(Vert3)): SetGadgetText(22, Str(Bleu3))
         Case 34
             SetGadgetState(1,roug4):SetGadgetState(11,vert4):SetGadgetState(21,bleu4)
             SetGadgetText(2, Str(Roug4)):SetGadgetText(12, Str(Vert4)): SetGadgetText(22, Str(Bleu4))
         Case 1 
             Roug = GetGadgetState(1) 
             SetGadgetText(2, Str(Roug))
           If GetGadgetState(31)=1
             roug1=roug
           EndIf
           If GetGadgetState(32)=1
             roug2=roug
           EndIf
           If GetGadgetState(33)=1
             roug3=roug
           EndIf
           If GetGadgetState(34)=1
             roug4=roug
           EndIf
         Case 11 
             Vert = GetGadgetState(11) 
             SetGadgetText(12, Str(Vert)) 
           If GetGadgetState(31)=1
             vert1=vert
           EndIf
           If GetGadgetState(32)=1
             vert2=vert
           EndIf
           If GetGadgetState(33)=1
             vert3=vert
           EndIf
           If GetGadgetState(34)=1
             vert4=vert
           EndIf
         Case 21 
             Bleu = GetGadgetState(21) 
             SetGadgetText(22, Str(Bleu)) 
           If GetGadgetState(31)=1
             bleu1=bleu
           EndIf
           If GetGadgetState(32)=1
             bleu2=bleu
           EndIf
           If GetGadgetState(33)=1
             bleu3=bleu
           EndIf
           If GetGadgetState(34)=1
             bleu4=bleu
           EndIf
         EndSelect 
      If GetGadgetState(31)=1
          StartDrawing(ImageOutput(1)) 
          Box(0, 0, 60, 20, RGB(Roug1, Vert1, Bleu1)) 
          StopDrawing() 
      EndIf
      If GetGadgetState(32)=1
          StartDrawing(ImageOutput(2)) 
          Box(0, 0, 60, 20, RGB(Roug2, Vert2, Bleu2)) 
          StopDrawing() 
      EndIf
      If GetGadgetState(33)=1
          StartDrawing(ImageOutput(3)) 
          Box(0, 0, 60, 20, RGB(Roug3, Vert3, Bleu3)) 
          StopDrawing() 
      EndIf
      If GetGadgetState(34)=1
          StartDrawing(ImageOutput(4)) 
          Box(0, 0, 60, 20, RGB(Roug4, Vert4, Bleu4)) 
          StopDrawing() 
      EndIf
    EndIf 
Until EventID = #PB_Event_CloseWindow
poshu
Messages : 1138
Inscription : sam. 31/juil./2004 22:32

Message par poshu »

j'vais passer pour un vieux con, mais...

Code : Tout sélectionner

ColorRequester([CurrentColor])
... c'est pas plus simple?
Avatar de l’utilisateur
kernadec
Messages : 1606
Inscription : ven. 25/avr./2008 11:14

Message par kernadec »

bonsoir
oui ColorRequester c'est bien
mais dans un programme qui possede une interface
perso es ce que color requester modifie les couleurs en temps reel
je n'ai pas reussi a le faire! si tu as la solution je suis preneur
merci pour ta reponse
au revoir
Octavius
Messages : 312
Inscription : jeu. 26/juil./2007 12:10

Message par Octavius »

Non tu as raison, pour modifier les couleurs en temps réel on ne peut pas utiliser le ColorRequester...
Avatar de l’utilisateur
kernadec
Messages : 1606
Inscription : ven. 25/avr./2008 11:14

Message par kernadec »

merci octavius de ta reponse
j'ai fait ce dialogue pour les decors pour jouer sur les couleurs proche
et cree des contrast en degrades ca me sert bien
au revoir
Avatar de l’utilisateur
kernadec
Messages : 1606
Inscription : ven. 25/avr./2008 11:14

Message par kernadec »

bonsoir
autre exemple de curseur
create image permet mettre des couleurs sur les curseurs
sans passer par des fonctions API

Code : Tout sélectionner

;################################################################ 
;###  Kernadec le 07/2008                                     ### 
;###  Déclinaison de "colorViewer"                            ### 
;###  Dialogue pour la modification des parametres couleurs   ### 
;################################################################ 
If OpenWindow(4, 0, 0, 300, 140, "Parametres Couleurs", #PB_Window_MinimizeGadget| #PB_Window_ScreenCentered) 
  If CreateGadgetList(WindowID(4))  
   
     TrackBarGadget(1, 2,  3, 264, 20, 0, 255) 
     StringGadget(2, 268, 1, 24, 20, "0", #PB_String_ReadOnly) 
     TrackBarGadget(11, 2, 25, 265, 20, 0, 255) 
     StringGadget(12, 268, 25, 24, 20, "0", #PB_String_ReadOnly) 
     TrackBarGadget(21, 2, 47, 265, 20, 0, 255) 
     StringGadget(22, 268, 47, 24, 20, "0", #PB_String_ReadOnly) 
    OptionGadget(31, 7, 110, 60, 20,"ROUGE") 
    OptionGadget(32, 86, 110, 60, 20,"VERT") 
    OptionGadget(33, 162, 110, 60, 20,"BLEU") 
    OptionGadget(34, 234, 110, 60, 20,"JAUNE") 
  EndIf 
  
  CreateImage(1, 60, 20) 
  CreateImage(2, 60, 20) 
  CreateImage(3, 60, 20) 
  CreateImage(4, 60, 20) 
  CreateImage(5, 243, 5)
  CreateImage(6, 243, 5)
  CreateImage(7, 243, 5)
    
EndIf 
;############################################################################################# 
  
      ; Couleur a l'ouverture du Dialogue exemple :rouge 
      
         StartDrawing(ImageOutput(1)) 
         Roug1 = 255:Vert1 = 0:Bleu1 = 0 
         Box(0, 0, 60, 20, RGB(Roug1, Vert1, Bleu1))  
         StopDrawing() 
         StartDrawing(ImageOutput(2)) 
         Roug2 = 0:Vert2 = 255:Bleu2= 0 
         Box(0, 0, 60, 20, RGB(Roug2, Vert2, Bleu2)) 
         StopDrawing() 
         StartDrawing(ImageOutput(3)) 
         Roug3 = 0:Vert3 = 0:Bleu3 = 255 
         Box(0, 0, 60, 20, RGB(Roug3, Vert3, Bleu3)) 
         StopDrawing() 
         StartDrawing(ImageOutput(4)) 
         Roug4 =255:Vert4 = 255:Bleu4 = 0 
         Box(0, 0, 60, 20, RGB(Roug4, Vert4, Bleu4)) 
         StopDrawing() 
          StartDrawing(ImageOutput(5))
         Roug5 =255:Vert5 = 0:Bleu5 = 0
         Box(0, 0,243, 5, RGB(Roug5, Vert5, Bleu5)) 
         StopDrawing() 
         StartDrawing(ImageOutput(6))
         Roug6 =0:Vert6 = 255:Bleu6 = 0
         Box(0, 0, 243, 5, RGB(Roug6, Vert6, Bleu6)) 
         StopDrawing() 
         StartDrawing(ImageOutput(7))
         Roug7 =0:Vert7 = 0:Bleu7 = 255
         Box(0, 0, 243, 5, RGB(Roug7, Vert7, Bleu7)) 
         StopDrawing() 
     ;Gadget couleur par defaut avec codes RGB 
     SetGadgetState(31,1)  
     SetGadgetState(1,roug1):SetGadgetState(11,vert1):SetGadgetState(21,bleu1) 
     SetGadgetText(2, Str(Roug1)):SetGadgetText(12, Str(Vert1)): SetGadgetText(22, Str(Bleu1)) 

;############################################################################################# 
  
Repeat 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(1), 5, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(2), 80, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(3), 155, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(4), 230, 90) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(5),13, 18) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(6),13, 40) 
          StopDrawing() 
          StartDrawing(WindowOutput(4)) 
          DrawImage(ImageID(7),13, 62) 
          StopDrawing() 
  EventID = WaitWindowEvent() 
    If EventID = #PB_Event_Gadget 
       Select EventMenu() 
         Case 31 
             SetGadgetState(1,roug1):SetGadgetState(11,vert1):SetGadgetState(21,bleu1) 
             SetGadgetText(2, Str(Roug1)):SetGadgetText(12, Str(Vert1)): SetGadgetText(22, Str(Bleu1)) 
         Case 32 
             SetGadgetState(1,roug2):SetGadgetState(11,vert2):SetGadgetState(21,bleu2) 
             SetGadgetText(2, Str(Roug2)):SetGadgetText(12, Str(Vert2)): SetGadgetText(22, Str(Bleu2)) 
         Case 33 
             SetGadgetState(1,roug3):SetGadgetState(11,vert3):SetGadgetState(21,bleu3) 
             SetGadgetText(2, Str(Roug3)):SetGadgetText(12, Str(Vert3)): SetGadgetText(22, Str(Bleu3)) 
         Case 34 
             SetGadgetState(1,roug4):SetGadgetState(11,vert4):SetGadgetState(21,bleu4) 
             SetGadgetText(2, Str(Roug4)):SetGadgetText(12, Str(Vert4)): SetGadgetText(22, Str(Bleu4)) 
         Case 1 
             Roug = GetGadgetState(1) 
             SetGadgetText(2, Str(Roug)) 
           If GetGadgetState(31)=1 
             roug1=roug 
           EndIf 
           If GetGadgetState(32)=1 
             roug2=roug 
           EndIf 
           If GetGadgetState(33)=1 
             roug3=roug 
           EndIf 
           If GetGadgetState(34)=1 
             roug4=roug 
           EndIf 
         Case 11 
             Vert = GetGadgetState(11) 
             SetGadgetText(12, Str(Vert)) 
           If GetGadgetState(31)=1 
             vert1=vert 
           EndIf 
           If GetGadgetState(32)=1 
             vert2=vert 
           EndIf 
           If GetGadgetState(33)=1 
             vert3=vert 
           EndIf 
           If GetGadgetState(34)=1 
             vert4=vert 
           EndIf 
         Case 21 
             Bleu = GetGadgetState(21) 
             SetGadgetText(22, Str(Bleu)) 
           If GetGadgetState(31)=1 
             bleu1=bleu 
           EndIf 
           If GetGadgetState(32)=1 
             bleu2=bleu 
           EndIf 
           If GetGadgetState(33)=1 
             bleu3=bleu 
           EndIf 
           If GetGadgetState(34)=1 
             bleu4=bleu 
           EndIf 
         EndSelect 
      If GetGadgetState(31)=1 
          StartDrawing(ImageOutput(1)) 
          Box(0, 0, 60, 20, RGB(Roug1, Vert1, Bleu1)) 
          StopDrawing() 
      EndIf 
      If GetGadgetState(32)=1 
          StartDrawing(ImageOutput(2)) 
          Box(0, 0, 60, 20, RGB(Roug2, Vert2, Bleu2)) 
          StopDrawing() 
      EndIf 
      If GetGadgetState(33)=1 
          StartDrawing(ImageOutput(3)) 
          Box(0, 0, 60, 20, RGB(Roug3, Vert3, Bleu3)) 
          StopDrawing() 
      EndIf 
      If GetGadgetState(34)=1 
          StartDrawing(ImageOutput(4)) 
          Box(0, 0, 60, 20, RGB(Roug4, Vert4, Bleu4)) 
          StopDrawing() 
      EndIf 
    EndIf 
Until EventID = #PB_Event_CloseWindow 
Répondre