Powerbuilder pour les completement Geeks !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 11-08-2010 09:22:03

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

[RESOLU] Indiquer visuellement l'update d'une DW

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

 

#2 11-08-2010 09:27:45

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Indiquer visuellement l'update d'une DW

Code: pb

dw_back_color = dw1.Describe("DataWindow.Color")

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#3 11-08-2010 09:34:28

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Indiquer visuellement l'update d'une DW

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()" :

Code: pb

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

 

#4 11-08-2010 09:46:57

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Indiquer visuellement l'update d'une DW

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

 

#5 11-08-2010 09:52:04

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Indiquer visuellement l'update d'une DW

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

 

Pied de page des forums

Propulsé par FluxBB 1.2.22