Contenu transparent

BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008 - 28 avril 2007 à 12:02
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008 - 6 mai 2007 à 16:38
Bonjour à tous,

J'aimerais rendre une form transparente mais que la barre de titre reste visible... c'est-à-dire que toute la form doit disparaître sauf la barre de titre et le contour. Je souhaiterais que la couleur Blanc soit la couleur transparente, mais à chaque fois que j'ai cherché sur les sources du site aucune n'a pu m'aider... Quelqu'un a une idée ?

Merci d'avance !

21 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
28 avril 2007 à 12:08
Salut,

Regarde les source de Renfield (de ce site), il a fait une source répondant à ta demande...

A+
Exploreur

 
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
28 avril 2007 à 12:13
Salut,

Directement ici

A+
Exploreur

 
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
28 avril 2007 à 12:14
Transparente ou translucide ?
Car c'est loin d'être la même chose !
La transparence totale par diminution de l'opacité rendant en effet totalement inaccessibles les contrôles, autant alors avoir une Form composée de sa seule barre de titre !

La translucidité est autre chose est laisse encore voir (et donc accessibles) les contrôles dont l'opacité a été réduite !

Il te faut être clair sur ces points ...
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
28 avril 2007 à 12:53
A en juger par sa dernière source :
http://www.vbfrance.com/codes/BARRE-TITRE-STYLE-VISTA-SOUS-VB6_42481.aspx

je pense qu'il parle vraiment de transparence totale du contenu de la fenetre visée

- MadMatt -
Vb System Library
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
28 avril 2007 à 13:12
Salut,  MadM@tt,

L'affaire est dans ce cas classée : car la transparence totale induit l'innaccesibilité des contrôles également totalement transparents !

S'i s'agissait donc de celà, il lui suèffirait pour afficher une Form dont on ne voit que la barre de titre (puisque les autres contrôles, complètement transparents, ne seraient plus accessibles) de ramener à 0 lma hauteur de la Form !
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
28 avril 2007 à 13:37
Ah ben j'ai pas trop regardé comment il a fait pour les fenetres style vista, mais je pensais qu'il procedait ainsi :
Il prend une form qui sert uniquement pour la barre de titre : il rend totalement transparent le contenu pour ne garder que les contours, et en plus il la rend translucide.
Il prend une autre form sans bordures windows qu'il place dans les bordures transparentes de la première fenetre...

- MadMatt -
Vb System Library
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
29 avril 2007 à 10:23
Je m'explique :

La source dont parle [mailto:MadM@tt MadM@tt] (c'est en effet pour celle-ci que je pose cette question) utilise deux forms : le "fond" que j'ai nommé Bar dans le projet (barre de titre et contour translucides, comme sous Vista) et le contenu que j'ai nommé Background dans le projet, qui est une form à part entière et qui contient tous les contrôles et menus de la Form. Cependant, pour que le fond reste au-dessus du contenu (sinon on ne peut pas cliquer sur le contenu, et de plus on voit le fond de la fenêtre "fond" par dessus), j'ai dû la laisser toujours au premier plan. Le problème est le suivant : si on ouvre une boîte de dialogue ou une autre form qui est censée passer PAR DESSUS la form au style Vista, le contenu de cette même form restera au premier plan tandis que le fond de la form, lui, passera à l'arrière-plan. Ce que j'essaie de faire, c'est de résoudre le problème du premier-plan en ajoutant une couleur transparente à la form "Fond", ainsi seuls la barre de titre et le contour resteront visibles et je pourrai alors laisser la form "Contenu" à l'arrière-plan, car on pourra quand-même la voir et cliquer dessus (le fond de la fenêtre "Fond" aura tout bonnement disparu).

Pour résumer : ce que j'essaie de faire, c'est de faire disparaître le fond de la form "Fond" (ou Bar) de sorte qu'il n'y reste que la barre de titre et le contour.

Merci d'avance !

P.S : [mailto:MadM@tt MadM@tt], dans son dernier message, a raison : c'est exactement ainsi que j'ai procédé pour faire une fenêtre au style Vista...
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 avril 2007 à 11:03
Attends un peu ...


On va procéder par étapes :



Etape 1 : une forme transparente (pas translucide mais totalement transparente) mais avec son contenu (ses contrôles) parfaitement opaques, tu sais faire ?


Si oui : on continue


Si non : hé bien ! on va faire, pardi (moiu, je sais ...)
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 avril 2007 à 11:07
Car tu devines la suite, non ?
1) une form limitée à sa seule barre de titre
et
2) par dessus cette forme, la forme complètement transparente sauf les contrôles qu'elle contient

et je parle bien là de transparence totale, pas de translucidité trompeuse
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
29 avril 2007 à 12:23
Euh je ne sais pas faire une form complètement transparente mais avec un contenu opaque...

Mais je crois que vous n'avez pas compris ce que j'essaie de faire : j'essaie de faire la même chose que sur ma source (http://www.vbfrance.com/codes/BARRE-TITRE-STYLE-VISTA-SOUS-VB6_42481.aspx), mais SANS le fond (avec le Command1) au premier-plan et en contrepartie le contenu de la form "Bar" totalement invisible (on ne doit y voir que la Barre de Titre ET la contour bleu autour de la form) !

Je sais que c'est un peu compliqué, mais bon, si ce n'était pas compliqué je ne poserais pas cette question sur ce forum  !
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
29 avril 2007 à 13:48
Ok ok j'ai compris ce que tu veux faire, j'aurais procédé de la meme façon pour avoir des fenetres style vista.

Donc je résume pour etre clair.

Tu veux une form de fond dont on ne garde que les contours (barre de titre et bordures). Celle la on la rend translucide pour rendre comme dans vista. -> Form1

Puis tu colle par dessus une form opaque, mais sans bordure et barre de titre, et qui contient tous tes controles. -> Form2

Le problème, c'est de virer le contenu de la Form1, pour garder que les barres de titre et bordure.
Pour faire cela, c'est possible, il faut utiliser ce procédé :
http://www.vbfrance.com/codes/FORME-IRREGULIERE-TUTORIAL_1218.aspx
http://www.vbfrance.com/codes/FORM-NON-RECTANGULAIRES-TRANSPARENTES-CERTAINS-ENDROITS_21954.aspx
http://www.vbfrance.com/codes/FORM-TROUEE-AVEC-DEGRADE_26272.aspx

Le principe, c'est que tu va "enlever" un carré qui sera (dans les coordonnées de la fenetre) de 0,0 à Me.ScaleWidth, Me.ScaleHeight

Ensuite si j'ai bien compris, tu placera ta Form2 dans l'espace vide de la Form1 (en n'oubliant pas d'appliquer de la translucidité à Form1)

Je pense à une autre méthode, je ne sais pas si elle marcherait, ça serait de rendre translucide Form1, puis de faire un SetParent pour "inclure" Form2 dans Form1 (Form1 n'aurait pas de barre de titre pour simplifier). Mais je ne sais pas si Form2 deviendrait translucide car son parent l'est, quelqu'un sait ?

Voilà j'espère que j'ai bien compris le problème

- MadMatt -
Vb System Library
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 avril 2007 à 14:28
Je ne peux que t'inviter à relire mon message précédent ...(relis-le bien)
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
29 avril 2007 à 14:31
jmfmarques > "1) une form limitée à sa seule barre de titre
et
2) par dessus cette forme, la forme complètement transparente sauf les contrôles qu'elle contient"

Mais la deuxième form n'est pas transparente du tout si j'ai bien compris.

- MadMatt -
Vb System Library
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
29 avril 2007 à 20:59
Bonsoir  MadM@tt ,

J'ai peut-être alors mal compris ce qu'il voulait...

Avec ce que je lui dis :

Form./Barre de titre en haut : toujours visible et opaque (reste de la form réduit à 0 de hauteur)
Juste en dessous : form totalement transparente sauf les contrôles qu'elle contient. Cette form laissera voir et utiliser tout ce qui se trouve sous sa partie (le fond) transparente, que ces choses soient sur une autre form, une autre appli, son écran, etc...

Celà ne ferait pas l'affaire ?
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
29 avril 2007 à 21:12
Ah je vois, oui mais ça c'est pas les fenetres vista ? ça correspond pas à ce qu'il cherche je crois

Capture de ce qu'il veut faire :
http://www.vbfrance.com/codes_image/normal/42481.aspx

- MadMatt -
Vb System Library
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
30 avril 2007 à 09:33
Presque parfait, MadM@tt...

J'ai suivi tes conseils, mais un petit problème s'impose : la barre de titre est bien présente, il y a bien un "trou" dans la form, mais... le contour a disparu  !
Ca devient désespérant, là....
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
30 avril 2007 à 09:41
J'ai une idée : est-ce que ce ne serait pas plus simple d'utiliser une couleur transparente, puis de mettre la BackColor de la form "Bar" à cette couleur transparente ?
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
30 avril 2007 à 14:48
Ahhh pas une mauvaise idée, à essayer (y'a plein de code sur le site pour rendre une form transparente avec une couleur de transparence)

- MadMatt -
Vb System Library
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
30 avril 2007 à 15:40
Je vais essayer, je verrai bien si ça marche
0
BERGOUGNOUX Messages postés 40 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 16 mars 2008
30 avril 2007 à 15:40
Je vais essayer, je verrai bien si ça marche
0
Rejoignez-nous