2017-09-28 4 views
0

Je dois assigner un TRectangle.Fill.Color à partir d'un champ de base de données en utilisant LiveBindings, cela ressemble à une chose simple, mais je ne pouvais pas le faire. Peut-être le type de champ, peut-être la valeur, mais lorsqu'il est assigné à partir d'un PrototypedBinding ... cela fonctionne.Delphi FMX LiveBindings Rectangle.Fill.Color à partir d'un champ de base de données

Comment affecter une couleur à l'aide de livebindings?

Merci à l'avance!

+0

J'ai eu aucun problème contraignant visuellement champ 'LONGWORD' d'une table SQLite j'ai créé à l'aide FireDAC à Tokyo. Pourriez-vous préciser en détail quel est le problème exact, s'il vous plaît? – Victoria

+0

Je veux un changement TRectangle.Fill.Color basé sur une valeur dans un champ de la table de base de données, donc quand je change l'enregistrement ... la couleur change le TRectabgle. – FelixBCastillo

+0

Je comprends. C'est exactement ce que j'ai pu faire. Je demande ce que vous avez des problèmes avec. J'ai lié à un champ persistant via 'TLinkPropertyToField'. – Victoria

Répondre

0

Voici un exemple concret de ce que vous avez besoin:

Le type de champ est LongWord parce que System.UITypes déclare TAlphaColor = type Cardinal et les deux Cardinal et LongWord sont des alias pour UInt32.

Regarder les valeurs générées par PrototypeBindSource (à droite): enter image description here

Vérifiez si les valeurs de votre base de données correspondent aux valeurs entières non signées représentant les couleurs requises. Peut-être avez-vous essayé des valeurs trop petites?

Et voici un modèle de fixations pour la forme donnée: enter image description here

+0

Merci beaucoup, maintenant pour l'essayer! – FelixBCastillo