Comment pourrait-on changer l'opacité d'un contrôle basé sur TWinControl? Et pourquoi n'ont-ils pas ajouté cette capacité au niveau TControl/TWinControl (pourquoi seulement TForm)?Opacité d'un TWinControl?
Répondre
Le contrôle de l'opacité d'une fenêtre est offert par une fonctionnalité appelée , des fenêtres en couches. Vous pouvez read more about the feature on MSDN. Cette fonctionnalité est uniquement disponible pour les fenêtres de niveau supérieur. Pour autant que je sache, Desktop Window Manager (l'effet «verre» de Vista) n'est également disponible que pour les fenêtres de niveau supérieur.
Les alternatives disponibles pour les fenêtres enfants sont d'utiliser window regions pour marquer certaines zones d'une fenêtre comme complètement transparentes, ou d'utiliser bitmap alpha blending pour dessiner le contrôle entier vous-même.
Merci pour l'effort supplémentaire pour la liaison. –
Merci Lars.
Je ne sais pas comment vous le feriez. Si je comprends bien, Windows a seulement ajouté la translucidité à Windows, ce qui explique pourquoi TForm peut le gérer, mais pas les contrôles individuels. Rappelez-vous que la plupart des VCL sont simplement un wrapper autour des contrôles Windows Common, et si Windows ne le fait pas, le contrôle VCL associé le fera rarement. Les composants tiers étendent alors souvent les fonctionnalités de base.
S'il vous plaît modifier cela, même les contrôles sont des fenêtres (type 'HWND'). Le point important est que le support n'est là que pour les fenêtres sans le style 'WS_CHILD'. Un formulaire avec une méthode 'CreateParams' substituée qui définit le style' WS_CHILD' ne peut pas non plus être translucide. – mghie
mghie, merci, je pense que votre commentaire dit tout. –
- 1. Coulée d'un TWebBrowser en tant que TWinControl
- 2. jQuery opacité animation
- 3. contrer une opacité div?
- 4. CSS: Opacité problème
- 5. Jouer avec CSS Opacité
- 6. Opacité de forme seule
- 7. ligne et opacité
- 8. Valider CSS: Opacité?
- 9. Javascript Opacité Problème
- 10. opacité rendu WebKit
- 11. Opacité du widget PyGTK
- 12. CSS3 opacité de la propriété
- 13. opacité jQuery sur vol stationnaire
- 14. css3 opacité de navigateur croisé
- 15. Opacité des boutons/TextBox - VB.NET
- 16. WPF: Opacité et l'événement MouseEnter
- 17. La propriété Opacité dans IE
- 18. UIView et sous-vues - opacité
- 19. Avenir de IE9: Opacité + Performance
- 20. CSS - Texte opaque sur div faible opacité?
- 21. Opacité variable dans une application WPF
- 22. opacité Firefox texte question de fond
- 23. Windows Forms Opacité après affichage - C#
- 24. IE Opacité Problèmes avec Z-index
- 25. comment donner une opacité sur la carte
- 26. Ie filtre: alpha (opacité) bordure noire
- 27. Partiellement transparent (opacité) HTML5 Dessin sur toile
- 28. Firefox Opacité (Transparence) Dégradé - Fondu d'une image
- 29. paramètre Opacité en CSS pour Chrome
- 30. Définir "opacité" d'un CGLayer avant le tirage?
Je ne sais pas comment vous le feriez. Si je comprends bien, Windows a seulement ajouté la translucidité à Windows, ce qui explique pourquoi TForm peut le gérer, mais pas les contrôles individuels. Rappelez-vous que la plupart des VCL sont simplement un wrapper autour des contrôles Windows Common, et si Windows ne le fait pas, le contrôle VCL associé le fera rarement. Les composants tiers étendent alors souvent les fonctionnalités de base. –
@_J_: Vous avez raison. Pourquoi ne pas ajouter ceci comme une réponse pour qu'elle puisse être acceptée? –