2017-08-26 4 views
0

Je construis un contrôle personnalisé qui simule des rectangles partiellement arrondis en dessinant plusieurs rectangles les uns sur les autres. Je veux utiliser une couleur dans ce contrôle qui provient dynamiquement d'ailleurs - et parfois cette couleur a une composante alpha (semi-transparente). Bien sûr, cela ne fonctionne pas du tout pour moi, puisque la situation des rectangles multiples signifie que l'alpha montrera la superposition des rectangles.Comment obtenir la version opaque d'une couleur dans QML?

Y a-t-il une fonction que je peux utiliser pour définir la partie alpha d'une couleur sur une opacité complète et laisser le reste de la couleur seule?

Répondre

1

Vous pouvez accéder et définir des composants de couleur individuels, comme ceci:

someColor.a = 1 // set alpha to 1 for opaque 

Si vous demandez à obtenir la valeur d'un pixel après le moteur de rendu a mélangé tout, il n'y a pas moyen efficace de le faire.

Si vous connaissez toutes les couleurs mélangées, vous pouvez les mélanger manuellement.