Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour, j'aimerais, lorsque l'Update d'une DW a été COMMITé, changer la couleur de fond de la DW (ou la couleur d'un encadré, puisqu'apparemment en PB9 la couleur de fond par défaut d'une DW n'est pas modifiable par expression ?)
Y a-t-il une propriété que je puisse tester pour mettre une formule du type "color='if (maPropriete=True, rgb(255,0,0), rgb(0,0,0))'" par exemple ? Je pensais au départ simplement rajouter un flag dans ma DW qui serait à "O" une fois commité et à "N" sinon, mais ça m'ennuie d'alourdir ma DW d'un champ "bidon".
Dernière modification par sbouvetJD (11-08-2010 09:35:34)
Hors ligne
dw_back_color = dw1.Describe("DataWindow.Color")
Hors ligne
La solution pour laquelle j'ai optée est la suivante :
J'ai mis un cadre autour des informations pertinentes, et sur les attributs de color, j'ai mis un compute qui teste la valeur du "isModified()" :
rectangle(band=detail name=r_commit visible="1~tif(describe(~"datawindow.querymode~") = ~"yes~", 0, 1)" brush.color="67108864~tif(isRowModified(), rgb(255,234,250), 67108864)" pen.color="67108864~tif(isRowModified(), rgb(255,234,250), 67108864)" background.color="67108864~tif(isRowModified(), rgb(255,234,250), 67108864)" [...])
Dernière modification par sbouvetJD (11-08-2010 09:34:48)
Hors ligne
Oui pour ta solution :
Tu en avais une autre, qui peut peut être t'intérressé car elle n'exige pas de créer des cadres autours des champs.
Il s'agit de modifier la couleur des BAND qui elle est dynamique ( propriété COLOR dans l'onglet général de chaque BAND
Il faut le faire sur la BAND Detail , Trailer, Summary , Footer si nécessaire
Hors ligne
Seul souci avec cette solution, c'est que l'ancètre de mes fenètres modifie la couleur du fond du bandeau détail si on est en mode recherche (ce qui viendrait du coup écraser mon expression).
Hors ligne