PB : La transparence de la form s'applique aussi au controle
Manu94600
Messages postés107Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention20 février 2008
-
25 mars 2006 à 12:42
DarkenerDaemonEx
Messages postés11Date d'inscriptionmercredi 8 février 2006StatutMembreDernière intervention26 mars 2006
-
26 mars 2006 à 03:05
Salut à tous,
J'ai un petit souci de transparence.
J'ai une forme, avec un arrière plan disign, j'utilise la couleur Red comme couleur de fond. Et ensuite je mets la propriété TransparencyKey à Red aussi pour qu'il enlève le Rouge.
Du coup ma form est de la forme de mon arrière plan disign.
Sur cette form j'ai placé un RichTextBox.
Mon souci c'est que si je place du texte Rouge dans mon RichTextBox, il sera mit en transparent.
Alors je vourdrais savoir s'il y avait un moyen d'appliquer la Transparence que sur la form et non sur les autres controles ??
DarkenerDaemonEx
Messages postés11Date d'inscriptionmercredi 8 février 2006StatutMembreDernière intervention26 mars 2006 26 mars 2006 à 03:05
Salut,
Si tu veux donner une forme spéciale à ta fenêtre, utilises Region :
protected override void OnSizeChanged(EventArgs e)
{
Region rgn = new Region(new Rectangle(0,0,Width,Height));
/* ... */
Region oldrgn = Region;
Region = rgn;
if (oldrgn != null)
oldrgn.Dispose();
}
C'est à mon avis le mieux : ça passe théoriquement sur tous les systèmes (contrairement à Opacity et TransparencyKey qui, utilisant les "layered windows", ne passent que sur Windows NT 5.0 (Win2K) et supérieurs).
Et pour répondre à ta question, à moins de modifier la partie de user32.dll qui gère les "layered windows" il n'est pas possible d'appliquer la transparence seulement au Form.