Bonjour,

J'aimerais pouvoir rendre le background des contôles (labels etc...) transparents dans un shell. Ces contrôles sont situés dans un composite qui est garni par une image de fond. L'objectif est de voir l'image de fond dans les labels qui se trouvent dans ce composite (à la place d'un rectangle blanc opaque).
J'ai tenté ceci mais sans résultats :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
 
 s = new Shell(viewer.getTable().getDisplay(), SWT.PRIMARY_MODAL | SWT.NO_TRIM | SWT.TOOL);
 
composite1 = new Composite(s, SWT.INHERIT_FORCE);//tentative numero1
				FormLayout composite1Layout = new FormLayout();
				composite1.setLayout(composite1Layout);
				FormData composite1LData = new FormData();
				composite1LData.width = 300;//230
				composite1LData.height = 138;//104
				composite1LData.left =  new FormAttachment(2, 1000, 0);
				composite1LData.top =  new FormAttachment(0, 1000, 0);
				composite1LData.right =  new FormAttachment(1000, 1000, 0);
				composite1LData.bottom =  new FormAttachment(1000, 1000, 0);
 
				composite1.setBackgroundImage(Activator.getDefault().getImageRegistry().get("bgpop"));
				composite1.setLayoutData(composite1LData);
				composite1.setBackgroundMode(SWT.INHERIT_FORCE); //tentative numero2
 
//....suite, insertion des labels etc...
Ce sujet a déjà été abordé, ici (exemple : http://www.developpez.net/forums/d37...nce-composite/)ou sur d'autres forums mais je n'ai pas trouvé de réponse claire et précise ou alors je n'arrive pas à obtenir le résultat voulu.

Je pensais au départ que cela aurait pu être du à une incompatibilité de version de SWT ou autre, mais j'ai testé cet exemple http://www.sourcexchange.de/?page=Sh...e_language_id= ...et là ça fonctionne...

Quelqu'un a-t-il une idée de ce qui cloche dans mon code? un autre moyen de faire?

Merci