Comment définir un contrôle à un arrière-plan transparent
Comment puis-je régler l'arrière-plan d'un contrôle transparent?
Je parle de Label
et Text
contrôles pour le moment, mais peut être n'importe quel type de contrôle que je vois dans l'interface graphique.
Mise à JOUR: Que la réponse sélectionnée dit, j'ai juste eu à ajouter une ligne après la définition de l'image d'arrière-plan (dans mon cas):
shell.setBackgroundMode(SWT.INHERIT_FORCE);
Le code complet fragment a été très utile dans la résolution de la question.
- Pourquoi avez-vous besoin d'être transparent?
- Visual Studio permet d'imprimer des étiquettes transparentes par défaut, tout comme d'autres environnements que j'ai travaillé sur. La réponse est que je ne veux pas définir une couleur d'arrière-plan. Je veux l'arrière-plan de la fenêtre d'application (arrière-plan) pour montrer à travers.
Vous devez vous connecter pour publier un commentaire.
faire ce que vous souhaitez.
Ressemble à ceci:
Selon mes connaissances vous ne peut pas définir un contrôle (à l'exception d'un shell sur certains systèmes d'exploitation) transparent ou semi-transparent en SWT, par exemple, afficher un panneau en face d'une table de contrôle, où la table se montrer à travers le panneau. Comme les autres affiches écrit, on ne peut hériter de la fond.
Si vous ajoutez un Composite et spécifiez les options suivantes, il sera transparent:
new Composite(shell, SWT.TRANSPARENT | SWT.NO_BACKGROUND);
Vous avez besoin de faire l'appel suivant sur votre composite avant de enfant de contrôles, tels que des Étiquettes héritera de l'arrière-plan du composite.