PB à toute heure et à tout moment. (à parcourir avec modération)

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 05-12-2013 12:09:11

FlorentP  
Membre Geek
Award: bf
Lieu: Marseille
Date d'inscription: 23-03-2011
Messages: 95
Pépites: 1,422
Banque: 0

doubleclicked / dwo / groupe : lire colonne possible ?

Bonjour,

voici le problème :

Sur un double clic sur une colonne dans le header d'un groupe, j'essaie d'en lire la valeur.

Sur le bandeau j'ai row = 0 ce qui est normal puisque je ne clique pas sur une ligne mais sur le header d'un groupe.

Dans l’événement  doubleclicked, J'ai bien  dwo.type = "column" et le dwo.Name qui est bien celui de la colonne mais impossible de trouver comment récupérer la valeur qui est pourtant affichée à l'écran.

Cordialement.

Dernière modification par FlorentP (05-12-2013 12:12:47)

Hors ligne

 

#2 05-12-2013 12:43:35

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: doubleclicked / dwo / groupe : lire colonne possible ?

Code: pb

string    ls_oap, ls_nom
int      li_pos, li_row

ls_oap = trim(getObjectAtPointer())
if not isNull(ls_oap) and ls_oap <> '' then
  li_pos = pos(ls_oap,'~t')
  if li_pos > 0 then
    ls_nom = left(ls_oap,li_pos - 1)
    li_row = integer(right(ls_oap,len(ls_oap) - li_pos))
  end if
end if


ls_nom va te donner le nom de l'objet sur lequel tu as cliqué (mais ça tu l'as déjà)
li_row va te donner la row adéquate pour faire un getItemXXX
Sachant que la valeur affichée dans le group header est celle de la première row du groupe, donc li_row

Dernière modification par _francois_ (05-12-2013 12:44:20)

Hors ligne

 

#3 05-12-2013 12:43:58

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

Re: doubleclicked / dwo / groupe : lire colonne possible ?

Comportement normal pour un header...

Si c'est une colonne, il faut prendre la valeur sur la "vraie ligne" de détail suivante, en utilisant GetObjectAtPointer:

Code: pb

ls_object = This.GetObjectAtPointer( )
ll_row = Long( Mid( ls_object, ( Pos( ls_object, '~t', 1 ) + 1), 3)

// récup valeur( ll_row, dwo.Name )



Edit : so close


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

Hors ligne

 

#4 05-12-2013 22:43:02

FlorentP  
Membre Geek
Award: bf
Lieu: Marseille
Date d'inscription: 23-03-2011
Messages: 95
Pépites: 1,422
Banque: 0

Re: doubleclicked / dwo / groupe : lire colonne possible ?

Vous êtes rapides !
En parcourant la doc de GetObjectAtPointer je suis tombé sur GetBandAtPointer qui ressemble beaucoup.

Comme disait ma mère, vaut mieux un qui sait que cent qui cherchent !
Bravo les gars.

Dernière modification par FlorentP (05-12-2013 22:43:25)

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22