Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

WD12 - Interrupteur dans table hierarchique

11 réponses
Avatar
I.G.LOG
Bonjour
J'ai un interrupteur dans une table hierarchique mais je ne peux pas
modifier son état par programmation.
Voici le code pour test:

INTERR[1]..Etat = Inactif
Info((INTERR[1]..Etat = Actif)) // Renvoi 1 !!!????

Avez vous le même problème et quelle solution connaissez vous (s'il y en a
une) ?
Merci
Phil

10 réponses

1 2
Avatar
Fredo G-MDI
Dans ce cas là ce n'est pas la notion d'actif et inactif qu'il faut utiliser
mais plutôt
INTERR[1] = Faux
INTERR[1] = vrai

"I.G.LOG" a écrit dans le message de news:
485a675c$0$873$
Bonjour
J'ai un interrupteur dans une table hierarchique mais je ne peux pas
modifier son état par programmation.
Voici le code pour test:

INTERR[1]..Etat = Inactif
Info((INTERR[1]..Etat = Actif)) // Renvoi 1 !!!????

Avez vous le même problème et quelle solution connaissez vous (s'il y en a
une) ?
Merci
Phil



Avatar
I.G.LOG
> Dans ce cas là ce n'est pas la notion d'actif et inactif qu'il faut
utiliser
mais plutôt
INTERR[1] = Faux
INTERR[1] = vrai




Bonjour,
Non, je cherche vraiment à le rendre inactif, pas de l'affecter. Il faut
dans certains cas que l'utilisateur ne puisse plus cocher/décocher
l'interrupteur ! Donc bien jouer sur les états actifs / inactifs.
Avatar
Romain PETIT
I.G.LOG a écrit :

! Donc bien jouer sur les états actifs / inactifs.



Donc c'est bien la bonne syntaxe.
INTERR[1]..Etat = Actif

Mais quand tu fais :
Info((INTERR[1]..Etat = Actif))

-> Tu affectes l'état actif à l'option 1 et tu affiches (info) une
valeur d'égalité qui renvoie donc vrai (1)...

Il faut plutôt écrire :
Info(INTERR[1]..Etat)

A+


--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
I.G.LOG
> Mais quand tu fais :
Info((INTERR[1]..Etat = Actif))

-> Tu affectes l'état actif à l'option 1 et tu affiches (info) une valeur
d'égalité qui renvoie donc vrai (1)...

Il faut plutôt écrire :
Info(INTERR[1]..Etat)




En effet Romain; mais ca ne règle pas le problème puisque je n'arrive
toujours pas a rendre inactif ce satané interrupteur:
voici le code:

// Juste avant le clic sur l'interr
INTERR[1]..Etat = inactif

// A chaque modification de INTERR (TABLEGEN)
Info(Actif,MoiMême..Etat) // renvoi 0,0 ???
SI MoiMême..Etat = Actif ALORS ExécuteTraitement(BTSELGRP,trtClic) // Le
code est exécuté !!
Avatar
I.G.LOG
J'ai même inséré le code
INTERR[1]..Visible = Faux

Ca rend invible TOUS les interrupteurs INTERR de la table; alors que je
voudrais désactiver seulement le 1er
Avatar
Fredo G-MDI
Sur l'aide !

Etat d'une colonne de table


Si la propriété Etat est appliquée à une colonne, c'est toute la colonne qui
change d'état (et non pas une cellule de la colonne uniquement).

"I.G.LOG" a écrit dans le message de news:
485a7ca5$0$897$
J'ai même inséré le code
INTERR[1]..Visible = Faux

Ca rend invible TOUS les interrupteurs INTERR de la table; alors que je
voudrais désactiver seulement le 1er



Avatar
Fredo G-MDI
Que veux-tu faire exactement, il y a toujours moyen de contourner le
problème ?

"I.G.LOG" a écrit dans le message de news:
485a7ca5$0$897$
J'ai même inséré le code
INTERR[1]..Visible = Faux

Ca rend invible TOUS les interrupteurs INTERR de la table; alors que je
voudrais désactiver seulement le 1er



Avatar
I.G.LOG
> Etat d'une colonne de table


Si la propriété Etat est appliquée à une colonne, c'est toute la colonne
qui change d'état (et non pas une cellule de la colonne uniquement).




Je ne trouve pas cette rubrique dans l'aide... mais je fais bien
INTERR[1]..Etat, qui correspond à la cellule, pas à la colonne (INTERR..Etat
= Inactif doit effectivement rendre inactif la colonne entière)
En fait, j'arrive sans problème à modifier l'état des cellules de table,
mais PAS celui des interrupteurs !!!
Avatar
I.G.LOG
> Que veux-tu faire exactement, il y a toujours moyen de contourner le
problème ?



Il faut, dans certains cas, que l'utilisateur ne puisse plus cocher/décocher
l'interrupteur !
Dans mon cas, j'utilise une table hiérarchique:
Par exemple, si un des fils est sélectionné, il ne faut pas qu'on puisse
décocher le parent.
Ca c'est un exemple simple; dans mon appli, j'ai besoin de rendre inactif
certains interrupteurs en fonction de nombreux paramètres.
Avatar
I.G.LOG
J'ai peut-etre trouvé (faut que je le confirme mais ca semble marcher)

Il faut utiliser :

INTERR[1]..Etat = AffichageSeulement

et pas ..Etat = actif

Merci à tous
1 2