Pas d'inquiétude, avec PBAdonf, c'est dans la poche ! ^^

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 19-03-2009 15:57:34

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Problème compute expression

Bonjour,

J'ai un gros problème avec un bug de PB, je ne sais plus comment faire...

Dans une datawindow j'ai 3 champs :
- Une dropdownlistbox avec deux ligne (A et B)
- Et deux autres champs

J'aimerais que lorsque je choisis "A" ca me mette le premier champs en blanc et protect = 0 et le deuxieme champs en gris avec protect = 1
si je choisi "B" J'aimerais l'inverse (premier champs en gris et protect = 1, et deuxieme champs en blanc protect = 0)

c'est normalement tres simple à faire : modifier le compute expression de la propriété protect des deux champs, ainsi que le compute expression de leur propriété background color. et bien ca ne marche pas

j'ai également éssayé de le faire "à la main" dans le constructor du control dw en faisant des modify, et aussi avec la notation pointée (dw_1.object.champs1. protect = ".....") ca ne marche pas non plus

en fait ce qui ne marche pas, c'est l'expression du background color qui est mal interprétée on dirais (le protect marche bien apparement).

avec vous déja eu ce genre de problème ?
Ma version de Pb : 10.2.1 build 9537

Si quelqu'un aurait une idée ca serais super....

Merci d'avance

Hors ligne

 

#2 19-03-2009 16:29:31

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: Problème compute expression

Bonsoir,

Tu as vérifié que ton "background color" n'est pas transparent?

F1 a écrit:

Property for Background    Value
Color    (exp) A long expression specifying the color (the red, green, and blue values) to be used as the control's background color.
Mode    (exp) A number expression specifying the mode of the background of controlname.
                Values are:0 - Make the control's background opaque.
                                1 - Make the control's background transparent.

En modify, il faut donc intervenir sur la propriété "Color", et sur la propriété "Mode"


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#3 20-03-2009 08:33:21

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: Problème compute expression

je viens de rajouter le mode=0 et j'ai choisi également une couleur autre que "transparent" dans la datawindow mais le résultat est le même

Je ne sais plus comment faire là

Hors ligne

 

#4 20-03-2009 08:59:30

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: Problème compute expression

Bonjour,

Je viens d'essayer ton scénario avec une expression du type dans le "background color" :

Code: pb

if(col1 = 'B', RGB(128,128,128), RGB(255,255,255))


Cela marche sans problème. Tu peux nous donner la syntaxe de ton expression ?

Hors ligne

 

#5 20-03-2009 09:13:51

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: Problème compute expression

Bonjour,

Es ce que tu as testé le retour de tes instructions modify ?

Returns the empty string ("") if it succeeds and an error message if an error occurs. The error message takes the form "Line n Column n incorrect syntax". The character columns are counted from the beginning of the compiled text of  modstring.


Hors ligne

 

#6 20-03-2009 10:11:49

Sailor LVCV  
N2I power
Lieu: Vigneux sur Seine
Date d'inscription: 04-03-2008
Messages: 54
Pépites: 1,253
Banque: 0

Re: Problème compute expression

Essaye background.mode=2, c'est ma solution quand le 0 ne fonctionne pas
d'ailleurs tu devrais en trouver dans GESPER


Moi, Sailor LVCV, au nom d'Aldebaran, je vais vous punir !!!

Hors ligne

 

#7 25-03-2009 10:30:44

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: Problème compute expression

Salut VAD le monde est petit , et merci pour vos conseils

alors voici ce que j'ai mis :

Code: pb

THIS.Modify ("coptis.protect='0~t If(pdt_test_typ = 1,0,1)'")
THIS.Modify ("coptis.background.color='16777215 ~t If(pdt_test_typ = 1,16777215,553648127)'")
THIS.Modify ("coptis.background.mode='0'")

THIS.Modify ("pdt_test_lib.protect='0~t If(pdt_test_typ = 0,0,1)'")
THIS.Modify ("pdt_test_lib.background.color='16777215 ~t If(pdt_test_typ = 0,16777215,553648127)'")
THIS.Modify ("pdt_test_lib.background.mode='0'")

par contre j'ai pas encore éssayé avec le background.mode = 2

Oui j'ai également regardé le retour des modify aussi



message de modération : n'oublie pas d'ajouter =pb à la balise code


Dernière modification par bombseb (25-03-2009 10:32:14)

Hors ligne

 

#8 25-03-2009 11:00:28

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: Problème compute expression

Bonjour,

J'ai testé avec ton code. Le problème est dans la valeur de la couleur : 553648127 ?

Dark Gray : RGB(128,128,128) => 8421504
Light Gray : RGB(192,192,192) => 12632256

En remplaçant ta valeur de couleur par les valeurs ci-dessus, cela fonctionne sans problème.

Hors ligne

 

#9 25-03-2009 13:16:19

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: Problème compute expression

Exact buck. 553648127 correspond justement à ... transparent


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#10 25-03-2009 13:50:32

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: Problème compute expression

rolala....

heureusement que vous êtes là, j'avais même pas fait gaffe...

Merci beaucoup pour votre aide !

Hors ligne

 

#11 25-03-2009 14:33:42

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: Problème compute expression

bombseb a écrit:

rolala....

heureusement que vous êtes là, j'avais même pas fait gaffe...

Merci beaucoup pour votre aide !

Si tu as affecté cette valeur au hasard, je te conseille de jouer au loto aujourd'hui


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#12 26-03-2009 16:30:37

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: Problème compute expression

bonne idée je vais y jouer demain )

si vous voyez que je ne poste plus sur le forum, c'est que j'ai gagné

Hors ligne

 

#13 27-03-2009 15:58:55

Sailor LVCV  
N2I power
Lieu: Vigneux sur Seine
Date d'inscription: 04-03-2008
Messages: 54
Pépites: 1,253
Banque: 0

Re: Problème compute expression

Je ne pense pas que ce soit du au hasard, car ceux sont mes codes couleurs fétiches (vu en edit source )
GESPER doit en être truffé

16777215 = white
553648127 =  transparent (comme là si bien dit mon cher collègue )

Le principal c'est que cela fonctionne

Dernière modification par Sailor LVCV (27-03-2009 15:59:35)


Moi, Sailor LVCV, au nom d'Aldebaran, je vais vous punir !!!

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22