Radios boutons qui ne se coordonnent pas

Bonjour,

J’avais une case à cocher associé au paramètre d’une variable objet (preferences_generales.maj.automatique).
On m’a demandé de remplacer la case à cocher par une paire de boutons radios Oui/Non.
J’ai donc supprimé la case à cocher, associé le bouton “Oui” à ma variable objet, puis j’ai formé un groupe avec le radio bouton “Non”. (les deux radios boutons on la même base de nom d’objet)

Mais une fois le formulaire ouvert en utilisation, les deux radios boutons restent indépendants et ne se coordonnent pas.

Comment dois-je procéder ? Merci !!

PS : le radio bouton “Oui” s’initialise correctement suivant que ma variable objet vaille 1 ou 0 à l’ouverture du formulaire. Le bouton radio “Non” est toujours décoché.

AVANT: tu pouvais simplement à partir d’un champ booléen placer ce champ dans ton formulaire, supprimer son titre, il se transforme automatiquement en 2 boutons radios (mais c’est un seul et même widget !) il suffit ensuite de changer le nom des titres pour vrai et pour faux en oui et non.

A l’avenir: il semblerait que ce widget soit déprécié dans les prochaines versions (v18 ?)

Tu peux donc gruger en faisant comme tu essais de faire 2 boutons radios groupés, mais il faut affecté le résultat au champ toi même ou en passant dans le nom de variable une expression “Non([Table]Champ_bool)” et “[Table]Champ_bool” pour l’autre…

Bonjour,

[non testé] mais cela devrait fonctionner

Bonjour,

Merci pour vos conseils. Malheureusement je n’arrive pas à utiliser l’expression “not(preferences_generales.maj.automatique)” dans mon bouton radio “Non”. De fait j’associe ce bouton radio à un autre paramètre de ma variable objet :
Oui : preferences_generales.maj.automatique
Non : preferences_generales.maj.automatique1

Cette deuxième ne me sert à rien d’autre qu’à faire fonctionner mes boutons radios. C’est moche, mais ça marche comme ça pour le moment.

Bon, j’ai testé, voici le résultat :https://forums.4d.com/4DBB_Main/x_User/3930/files/30401336.zipbase>

Merci @Vincent DE LACHAUX pour ton exemple. Il m’a permit de voir que ça marche très bien avec du Vrai/Faux alors que pas du tout avec du 1/0.

Soit dit en passant, ça ne marche quand-même pas dans mon formulaire, mais je vais creuser pour trouver où est mon erreur.
Merci beaucoup !!

Cela doit marcher également avec 0/1 il faut juste changer la propriété des boutons en valeur numérique et non booléenne et peut-être l’expression du bouton off en 1-form.test
Non testé

testé : https://forums.4d.com/4DBB_Main/x_User/3930/files/30406407.zipbase>

: Serge HAROUTUNIAN

Soit dit en passant, ça ne marche quand-même pas dans mon formulaire,
mais je vais creuser pour trouver où est mon erreur.

Est-tu certain que les boutons radio sont groupés ?

Oui, d’ailleurs c’est chi*** de dégrouper à chque fois pour changer la propriété d’un des objets avant de regrouper LOL

J’ai tenté de carrément copier/coller ton formulaire dans un nouveau formulaire de mon appli, et là ça ne fonctionne plus. Ma valeur reste à “true” et quand je tente de cocher l’autre radio bouton, le focus se met dessus, mais c’est l’autre qui reste coché et ma valeur reste à True…

Est-ce qu’il y a une propriété dans le formulaire ou dans la base qu’il faut modifier ?

: Serge HAROUTUNIAN

Oui, d’ailleurs c’est chi*** de dégrouper à chque fois pour changer
la propriété d’un des objets avant de regrouper LOL

Sur Mac OS, tu peux clicker sur un object avec la touche CMD enfoncé cela va sélectionner l’objet même s’il est groupé. Cela évite de devoir dégroupé à chaque fois.

Sur Windows je ne connais pas le raccourcis.

: Gabriel INZIRILLO

Sur Mac OS, tu peux clicker sur un object avec la touche CMD enfoncé
cela va sélectionner l’objet même s’il est groupé. Cela évite de
devoir dégroupé à chaque fois.Quel bonheur !!! MERCI Gabriel !!

En fait si de base ma valeur est à False, cliquer sur “Oui” change bien la coche de bouton ainsi que la valeur. C’est le mouvement inverse (True -> False) qui ne fonctionne pas.

you need code in the object method to handle the click event,
because the one with the formula (Not(…)) will not assign a value to itself.

Hmm, I’m not sure. See the provided quick database, there is no code in the radio buttons.

Since one radio button is linked to the property, clicking on the other changes the value of the first one and updates the object.

: Keisuke MIYAKO

you need code in the object method to handle the click event,
because the one with the formula (Not(…)) will not assign a value
to itself.
The Vincent’s solution is right in the quick database he’s made.

But if I copy/paste all its form in my software, clicking the “On” button, when “Off” is check, works; the opposite doesn’t work :frowning:
And it the same things in my form.

I don’t know why it works in his quick database and not in my software… :roll:

[FR]
Si je recrée une case à cocher affectée à la variable preferences.maj.automatique, le fait de cocher/décocher cette case fonctionne parfaitement et met automatiquement à jour les boutons radios, dans les deux sens.

Lorsque Le radio bouton “Non” est coché (et que donc la case à cocher est décochée), le fait de cliquer sur “Oui” change bien la coche des radios bouton et coche aussi automatiquement la case à cocher.

Par contre si le radio bouton “Oui” est coché (et que la case à cocher est cochée), le fait de cliquer sur “Non” ne fonctionne pas et la case reste cochée.

[EN]
If I create a checkbox assigned to the preferences.maj.automatique variable, checking/unchecking this box works perfectly and automatically updates the radio buttons in both directions.

When the radio button “Non” is checked (and therefore the check box is unchecked), clicking “Oui” changes the tick of the radio buttons and also ticks the check box automatically.

On the other hand, if the radio button “Oui” is checked (and the check box is checked), clicking on “Non” doesn’t work and the box remains checked.

Ce que tu peux essayer, c’est de ne pas mettre de formule dans le bouton OFF. Cela “devrait” fonctionner.

could it be that compatibility settings “Boutons radio groupés par nom” is not activated?

https://doc.4d.com/4Dv17/4D/17.2/Page-Compatibilite.300-4402901.fr.html

: Vincent DE LACHAUX

Ce que tu peux essayer, c’est de ne pas mettre de formule dans le
bouton OFF. Cela “devrait” fonctionner.C’est une solution paliative que j’avais trouvé hier en affectant au bouton “Non” la variable “preferences_generales.maj.automatique1” qui ne me sert qu’à fournir une variable dans ce radio-bouton. Mais je ne trouve pas cela très propre, alors je tente d’intégrer ta solution.

: Keisuke MIYAKO

could it be that compatibility settings “Boutons radio groupés par
nom” is not activated?

<https://doc.4d.com/4Dv17/4D/17.2/Page-Compatibilite.300-4402901.fr.ht
l>This setting is activated on my database.