cs_flagada
Messages postés60Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 février 2011
-
25 mai 2007 à 20:22
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 2009
-
29 mai 2007 à 22:30
Bonjours tout le monde
Dites, je suis en train de mettre en place la gestion des skin pour mon lecteur audio DéKiBulle (http://dekibulle.free.fr) et il me reste un truc qui marche pas : c'est la couleur des barres de défilement que je ne sais pas comment changer
Voici ce que ça donne avec un skin "black" c'est pas super :
cs_flagada
Messages postés60Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 février 2011 26 mai 2007 à 11:46
Merci pour ta réponse !
J'ai un peu de mal à comprendre comment mettre en place la méthode par API,
j'ai essayé ça mais ça ne marche pas :
Dans public je déclare :
procedure DefaultHandler(var msg); override;
Puis :
procedure TForm1.DefaultHandler(var msg);
var
ScrollBrush : HBrush;
begin
inherited DefaultHandler(Msg);
if TMessage(msg).Msg = WM_CTLCOLORSCROLLBAR then begin
ScrollBrush := CreateSolidBrush($FFFFFF);
TMessage(msg).Result := ScrollBrush;
end;
end;
cs_flagada
Messages postés60Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 février 2011 27 mai 2007 à 22:00
Merci encore pour ta réponse !
Ta solution marche bien pour les composant TScrollBar mais cela semble ne pas marcher pour les scrollbar des composants Tlistbox et Ttreeview ?
Est-ce que ça signifie que si je veux arriver à personnaliser les couleurs de ces scrollbar il va falloir que je gère moi-même le scroll avec des composants "a côtés" style TScrollBar ?
je suis désolé si je suis un peu casse burne avec mes questions
a+
fred
Vous n’avez pas trouvé la réponse que vous recherchez ?
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 20218 27 mai 2007 à 23:42
Salut,
Je n'ai pas la solution miracle, je crois qu'il va te falloir passer par un composant qui gère ça.
Sinon, en attendant, essaye pour voir de mettre la propriété Ctl3D de tes ListBox à False.
Je trouve que ça rend le look un peu plus acceptable, du moins sous XP...
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 28 mai 2007 à 11:09
Bonjour à tous,
@ Flagada, voici un exemple (D6) avec synchronisation qui permet de changer la couleur du fond du scrollbar d'un Tlisbox, Ttreeview en modifiant le code naturellement pour le composant choisi.
procedure TMonScrollbar.CNCtlColorScrollBar(var Message: TMessage);
var ABrush:TBrush;
begin
ABrush:=TBrush.Create;
ABrush.Color:=clRed;
Message.Result:=ABrush.Handle;
with Message do
CallWindowProc(DefWndProc, Handle, Msg, WParam, LParam);
end;
cs_flagada
Messages postés60Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 février 2011 29 mai 2007 à 21:26
quelle galère merci beaucoup pour vos reponses
j'espérais trouver une solution simple mais a priori ça n'est pas si facile
la solution de cincap pourrait peut-etre convenir mais ça fait beaucoup de code juste pour une couleur et encore il y a des problèmes :
la scrollbar reste affichée même s'il n'y en a pas besoin (par exemple si la liste contient peu d'items), je vais voir si je vais m'en servir mais ça va énormément compliquer mon prog qui l'est déjà pas mal
j'ai bien peur de devoir laisser tomber l'idée... ou bien il faut que je programme des listbox et des treeview perso