Colorer un gadget Panel
Colorer un gadget Panel
Bonjour,
Je n'ai toujours pas réussi à pouvoir mettre de la couleur dans un gadget Panel.
Que ce soit avec des fonctions API qui pourtant marchent bien.
J'ai même essayé de dessiner dans un panel un rectangle en couleur mais cela non plus ne fonctionne pas.
Alors je commence à croire que cela est impossible.
Est-ce vraiment le cas ?
Pour ceux qui savent, merci pour leurs collaborations.
Je n'ai toujours pas réussi à pouvoir mettre de la couleur dans un gadget Panel.
Que ce soit avec des fonctions API qui pourtant marchent bien.
J'ai même essayé de dessiner dans un panel un rectangle en couleur mais cela non plus ne fonctionne pas.
Alors je commence à croire que cela est impossible.
Est-ce vraiment le cas ?
Pour ceux qui savent, merci pour leurs collaborations.
Re: Colorer un gadget Panel
Que veut tu faire Pat, tu veut mettre le texte en couleur ?, c'est possible
est-ce que tu veut ?, si oui je me porte volontaire pour t'aider

est-ce que tu veut ?, si oui je me porte volontaire pour t'aider

La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !
Mon forum http://purebasic.forumphp3.com/index.php
Mon forum http://purebasic.forumphp3.com/index.php
Re: Colorer un gadget Panel
.................
Dernière modification par Backup le sam. 01/oct./2011 10:04, modifié 1 fois.
Re: Colorer un gadget Panel
Bonjour,
Pour Dayvid :
Je veux mettre de la couleur dans un panel (ou une image) et mettre des objets également dans ce panel.
Pour Dobro :
Merci pour tes contributions, mais comme je suis dans un lieu public avec un accès Internet bridé, je suis obligé de taper ton programme chez moi, ce qui va me prendre du temps, et donc je ne sais pas ce que cela va donner, tout en te faisant confiance car je sais que tu es assez doué en programmation alors que je suis, hélas pour moi, plutôt médiocre, même si j'arrive à faire certaines choses.
Merci à vous deux pour vos réponses respectives et particulièrement à Dobro qui n'hésite pas à répondre et même à résoudre mes problèmes.
A ceux qui auraient voulu que Dobro ne fasse plus partie du forum, sachez que grâce à lui, et à d'autres aussi, j'apprends doucement et sans ces aides, point de progrès pour moi.
Pour Dayvid :
Je veux mettre de la couleur dans un panel (ou une image) et mettre des objets également dans ce panel.
Pour Dobro :
Merci pour tes contributions, mais comme je suis dans un lieu public avec un accès Internet bridé, je suis obligé de taper ton programme chez moi, ce qui va me prendre du temps, et donc je ne sais pas ce que cela va donner, tout en te faisant confiance car je sais que tu es assez doué en programmation alors que je suis, hélas pour moi, plutôt médiocre, même si j'arrive à faire certaines choses.
Merci à vous deux pour vos réponses respectives et particulièrement à Dobro qui n'hésite pas à répondre et même à résoudre mes problèmes.
A ceux qui auraient voulu que Dobro ne fasse plus partie du forum, sachez que grâce à lui, et à d'autres aussi, j'apprends doucement et sans ces aides, point de progrès pour moi.
Re: Colorer un gadget Panel
Faut surtout pas lui dire ça, il va se prendre la grosse tête.pat a écrit : A ceux qui auraient voulu que Dobro ne fasse plus partie du forum, sachez que grâce à lui, et à d'autres aussi, j'apprends doucement et sans ces aides, point de progrès pour moi.
Un mec qui est capable de quitter Annecy pour venir s'enterrer au fin fond du trou du cul du monde, en Haute-Loire, c'est un mec qui est capable de tout.
Imagine quand même que la plus grande ville proche de chez lui, c'est Craponne sur Arzon!
Tout un programme!

Re: Colorer un gadget Panel
............
Dernière modification par Backup le sam. 01/oct./2011 10:04, modifié 1 fois.
Re: Colorer un gadget Panel
Bonjour,
Oubliez SVP vos amabilités et revenons à Purebasic.
Pour Dobro :
La deuxième version que tu as fourni ne marche pas bien du tout.
Mettre un Imagegadet(4,xxx) et ensuite un DisableGadget(4,1) plante le système.
Identique pour l'image avec le numéro 7.
Même si tu as mis en commentaire les instructions qui auraient peut être dû se mettre dans le programme, l'instruction SetWindowTheme n'existe pas, ni implémenté dans les instructions API de Purebasic, ni même dans la SDK Documentation (que j'ai eu un mal fou à obtenir).
Quant au résultat final, pas d'image dans le panel.
La première version m'a bien donné une image dans le panel.
Comme tu le sais, l'instruction CreateGadgetList n'existe plus. Mais il suffit de supprimer l'instruction et la condition qui va avec.
Il faut savoir que si l'image n'est pas suffisamment grande pour le panel, le système duplique cet image pour remplir la surface du panel.
Ce qui est désagréable c'est que cet image s'étend du début du texte de l'onglet et non pas à partir de la surface de travail de l'onglet.
A savoir également que les instructions pour mettre de la couleur dans les objets (avec le callback pour l'appel) ne fonctionne pas pour les objets du panel (j'ai déjà essayé avec ce genre d'instructions et si cela fonctionne pour les objets dans une fenêtre sans panel, cela ne fonctionne pas à l'intérieur du panel). Cela peut parfaitement passer pour les objets de type Text... car Purebasic permet de colorier cet objet et cela fonctionne même dans un panel mais en ce qui concerne les deux instructions : Optiongadget et Checkboxgadget auquel Purebasic ne permet pas de colorier ces objets, alors il n'y a rien à faire à l'intérieur d'un panel mais uniquement dans une fenêtre sans panel.
Alors je me pose une nouvelle question : est-il possible de colorier les objets Optiongadget et Checkboxgadget dans un panel ?
Il est clair que tes deux programmes ont manqué un peu d'attention mais c'est déjà bien que tu ais bien voulu me répondre.
Sauras-tu me répondre à la nouvelle question que je pose ?
En tout cas, merci pour tes contributions et ta volonté de me venir en aide.
Oubliez SVP vos amabilités et revenons à Purebasic.
Pour Dobro :
La deuxième version que tu as fourni ne marche pas bien du tout.
Mettre un Imagegadet(4,xxx) et ensuite un DisableGadget(4,1) plante le système.
Identique pour l'image avec le numéro 7.
Même si tu as mis en commentaire les instructions qui auraient peut être dû se mettre dans le programme, l'instruction SetWindowTheme n'existe pas, ni implémenté dans les instructions API de Purebasic, ni même dans la SDK Documentation (que j'ai eu un mal fou à obtenir).
Quant au résultat final, pas d'image dans le panel.
La première version m'a bien donné une image dans le panel.
Comme tu le sais, l'instruction CreateGadgetList n'existe plus. Mais il suffit de supprimer l'instruction et la condition qui va avec.
Il faut savoir que si l'image n'est pas suffisamment grande pour le panel, le système duplique cet image pour remplir la surface du panel.
Ce qui est désagréable c'est que cet image s'étend du début du texte de l'onglet et non pas à partir de la surface de travail de l'onglet.
A savoir également que les instructions pour mettre de la couleur dans les objets (avec le callback pour l'appel) ne fonctionne pas pour les objets du panel (j'ai déjà essayé avec ce genre d'instructions et si cela fonctionne pour les objets dans une fenêtre sans panel, cela ne fonctionne pas à l'intérieur du panel). Cela peut parfaitement passer pour les objets de type Text... car Purebasic permet de colorier cet objet et cela fonctionne même dans un panel mais en ce qui concerne les deux instructions : Optiongadget et Checkboxgadget auquel Purebasic ne permet pas de colorier ces objets, alors il n'y a rien à faire à l'intérieur d'un panel mais uniquement dans une fenêtre sans panel.
Alors je me pose une nouvelle question : est-il possible de colorier les objets Optiongadget et Checkboxgadget dans un panel ?
Il est clair que tes deux programmes ont manqué un peu d'attention mais c'est déjà bien que tu ais bien voulu me répondre.
Sauras-tu me répondre à la nouvelle question que je pose ?
En tout cas, merci pour tes contributions et ta volonté de me venir en aide.
Re: Colorer un gadget Panel
Tu sais , meme la Librairie Purecolor bloc sur les Panels ..
sur le Forum Anglais, peu de gens ont apporté une solution
a mon avis, c'est peut etre Faisable, mais pas évident, en tout cas, API obligatoire
ou alors on sera toujours dans l'a peut pres
fait une recherche sur le Fofo Anglais, tu verra , il n'y a pas beaucoup de solutions au portillon
sur le Forum Anglais, peu de gens ont apporté une solution
a mon avis, c'est peut etre Faisable, mais pas évident, en tout cas, API obligatoire
ou alors on sera toujours dans l'a peut pres

fait une recherche sur le Fofo Anglais, tu verra , il n'y a pas beaucoup de solutions au portillon

- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Colorer un gadget Panel
Le code ci-dessous colorise les objets OptionGadget et CheckBoxgadget dans un panel en passant par un callback (Compatible Window uniquement). J'ai aussi utiliser une astuce pour colorier le panel mais forcement les onglets ne le sont pas. je pratique trop peu les API Windows.pat a écrit :Alors je me pose une nouvelle question : est-il possible de colorier les objets Optiongadget et Checkboxgadget dans un panel ?
compile avec et sans le support des thèmes XP pour voir la différence.
Code : Tout sélectionner
Enumeration
#MainForm
#Panel
#Wrapper1
#Wrapper2
#Option
#Check
#AnotherCheck
EndEnumeration
Global YellowColor.i, GreenColor.i
YellowColor = CreateSolidBrush_($B2FCFD)
GreenColor = CreateSolidBrush_($B8F8CE)
Procedure WindowCallback(WindowID, Message, wParam, lParam)
Result = #PB_ProcessPureBasicEvents
Select Message
Case #WM_CTLCOLORSTATIC
Select lparam
Case GadgetID(#Option)
SetBkMode_(wParam,#TRANSPARENT)
SetTextColor_(wParam, $0862F7)
Result = YellowColor
Case GadgetID(#Check)
SetBkMode_(wParam,#TRANSPARENT)
SetTextColor_(wParam, $0862F7)
Result = YellowColor
Case GadgetID(#AnotherCheck)
SetBkMode_(wParam,#TRANSPARENT)
SetTextColor_(wParam, $0862F7)
Result = GreenColor
EndSelect
EndSelect
ProcedureReturn Result
EndProcedure
Procedure MainformShow()
If OpenWindow(#Mainform, 422, 335, 400, 225, "Test", #PB_Window_SystemMenu)
PanelGadget(#Panel, 10, 20, 250, 180)
AddGadgetItem(#Panel, -1, "Tab #1")
TextGadget(#Wrapper1, 0,0,250,180,"")
SetGadgetColor(#Wrapper1, #PB_Gadget_BackColor, $B2FCFD)
OptionGadget(#Option, 35, 25, 230, 20, "Option Gadget")
CheckBoxGadget(#Check, 35, 50, 230, 20, "Check Gadget")
AddGadgetItem(#Panel, -1, "Tab #2")
TextGadget(#Wrapper2, 0,0,250,180,"")
SetGadgetColor(#Wrapper2, #PB_Gadget_BackColor, $B8F8CE)
CheckBoxGadget(#AnotherCheck,20,20,200,20, "Another Check")
CloseGadgetList()
EndIf
SetWindowCallback(@WindowCallback())
EndProcedure
MainFormShow()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Colorer un gadget Panel
Excellent, je garde 

Re: Colorer un gadget Panel
Merci Dobro, tu as répondu en fonction de ce que tu as pu.
Sublime, falsam, je vais me mettre aussitôt à l'oeuvre.
Un super merci pour toi et tes compétences semblent importantes.
Je pense que beaucoup de personnes apprécieront ton code.

Sublime, falsam, je vais me mettre aussitôt à l'oeuvre.
Un super merci pour toi et tes compétences semblent importantes.
Je pense que beaucoup de personnes apprécieront ton code.

Re: Colorer un gadget Panel
Excellent falsam 

~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: Colorer un gadget Panel
Ouoi, excelent Falsam
super code
, merci beaucoup 

super code


La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !
Mon forum http://purebasic.forumphp3.com/index.php
Mon forum http://purebasic.forumphp3.com/index.php