Création d'une barre type volet d'exploration [Résolu]

jris2fun 4 Messages postés mercredi 3 mars 2004Date d'inscription 8 septembre 2005 Dernière intervention - 6 sept. 2005 à 07:41 - Dernière réponse : Darkwolf8666 4 Messages postés mercredi 4 janvier 2006Date d'inscription 16 février 2011 Dernière intervention
- 1 août 2006 à 18:11
Bonjour à Tous

Je suis entrain de développer une espèce de barre à gauche qui ressemble au volet d'exploration WindowsXP,
afin d'avoir un menu personnalisable pour mes applications.

Le truc fonctionne bien, mais je voudrais lorsque je clique sur un groupe que les éléments en dessous se déplie
avec un effet de fondu. Je pensais utiliser la fonction opacity d'un formulaire de la même couleur que mon volet que j'aurai superposé à mon panel. En faisait varier sa transparence, cela aurait donné la même chose que sous windows XP, mais cela ne fonctionne pas. Je n'arrive pas à rajouter un formulaire sur mon formulaire.
Celui ci se trouve sur une fenêtre à part entière.
Existe t'il un truc plus simple ? Un composant ? Quelqu'un aurait t'il dériver le composant panel
et lui aurait ajouter l'opacity ou un truc de ce genre ?

Merci d'avance
Thanks. Je suis débutant.
JrIs2fun
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 7 sept. 2005 à 14:46
3
Merci
j'ai mis à jour ma source...



mais je n'arrive pas à réduire le clignotement.

Sébastien FERRAND

Merci sebmafate 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de sebmafate
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 6 sept. 2005 à 08:45
0
Merci
il faut utiliser un panel...

sinon, il existe déjà ce genre de composant : www.vbaccelerator.com, netxp...

Sébastien FERRAND
Commenter la réponse de sebmafate
t_barbillon 341 Messages postés mercredi 8 juin 2005Date d'inscription 10 février 2009 Dernière intervention - 6 sept. 2005 à 08:59
0
Merci
Salut,
Utilise un panel
Commenter la réponse de t_barbillon
t_barbillon 341 Messages postés mercredi 8 juin 2005Date d'inscription 10 février 2009 Dernière intervention - 6 sept. 2005 à 09:00
0
Merci
Oups, j'aurai du actualiser la page avant
Commenter la réponse de t_barbillon
jris2fun 4 Messages postés mercredi 3 mars 2004Date d'inscription 8 septembre 2005 Dernière intervention - 6 sept. 2005 à 09:13
0
Merci
Merci à tous pour vos réponse.

Je veux bien utiliser un panel, mais sur l'objet Panel, il n'y a pas d'opacity.

JRis2fun
Commenter la réponse de jris2fun
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 6 sept. 2005 à 09:30
0
Merci
je regarde ce que je peux faire ;)

Sébastien FERRAND
Commenter la réponse de sebmafate
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 6 sept. 2005 à 16:43
0
Merci
voila : http://www.csharpfr.com/code.aspx?ID=33676



ca fonctionne mais je n'avais pas à supprimer le clignotement.

Sébastien FERRAND
Commenter la réponse de sebmafate
jris2fun 4 Messages postés mercredi 3 mars 2004Date d'inscription 8 septembre 2005 Dernière intervention - 7 sept. 2005 à 06:41
0
Merci
Merci Sébastien

Si j'ai bien compris ton code, tu as dérivé un composant de type panel en transparent panel
pour lequel tu redessines un rectangle de couleur combinaison transparent + opacity value renseignée dans le controle properties.

En fait, lorsque je modifie la valeur, celle ci n'est pas prise en compte. La transparence change mais pas de la valeur renseignée.
Ce n'est pas grave, en soit. J'arrive en fixant la value dans le code à faire grosso modo ce que je veux.

Par contre, je dois être un bille, parce que j'ai créé un bouton sur ton formulaire qui simulera l'appuie sur un bandeau de titre,
le panel transparent devrait avoir sa transparence qui augmenterait tout en ayant se hauteur qui diminuerait.
Cela permet au panel place sous ce panel transparent dont sa hauteur diminuerait également de simuler sa disparition à la façon volet d'exploration.

Sur le code click de mon bouton, je fait une boucle sur opacity vers 1, puis un panel2.refresh
J'arrive à faire varier sa transparence vers le haut (moins transparent) mais pas inversement !
Lorsque je fait varier opacity vers 0, puis le panel2.refresh, rien ! Comme pisser dans un violon.

Je n'arrive pas à faire varier sa hauteur, non plus ! J'essaie de changer panel2.height = panel2.height - i variant de pane2.height à 0. Ben rien n'y fait ! Il ne diminue pas et disparait d'un coup !
Faut il se synchroniser avec une horloge graphique ? COmment j'appelle le OnPaint ? Je pensais que c'était par le refresh.

Merci pour ton aide, je suis vraiment une brelle.
JRis2fun
Commenter la réponse de jris2fun
jris2fun 4 Messages postés mercredi 3 mars 2004Date d'inscription 8 septembre 2005 Dernière intervention - 8 sept. 2005 à 14:37
0
Merci
Merci Sébastien
Je regarde sur ce que je peux faire pour le scintillement (anti flicker, double buffering...)

http://www.devx.com/dotnet/Article/26681/1954?pf=true


JRis2fun
Commenter la réponse de jris2fun
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 8 sept. 2005 à 14:40
0
Merci
ok tiens moi au courant
Commenter la réponse de sebmafate
Darkwolf8666 4 Messages postés mercredi 4 janvier 2006Date d'inscription 16 février 2011 Dernière intervention - 1 août 2006 à 18:11
0
Merci
J'ai pris votre source pour faire en sorte que les panels soit transparent et je l'ai modifier pour faire en sorte que sa soit des ListView qui le soit sa marche mais j'ai 2 soucis:
       - Dans le programme a chaque fois que j'ouvre la boite de dialogue pour ouvrir un fichier il me fait un scintillement?
       -Et ensuite probléme plus gros toute les écriture de qui se trouve dans la ListView sont invisible pouvais vous m'aider?

Merci
Commenter la réponse de Darkwolf8666

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.