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

Au Focus... au secours... au Foc(o)u(r)s

8 réponses
Avatar
Luc de Kin
Bonjour a tous,

Je sais que je vais encopre me faire engueuler par certains (!) mais je
recidive pas question d'hier tant le probleme est em... voire grave car sans
solution, je vais devoir changer partie de l'application... et c'est galere !
Sorry et merci encore....

Voici le texte cette question, un tout ti peu modifie par rapport a hier !

Le contexte :

1 formulaire principal : B50_frmFiche dans lequel se trouve un sous-forms SF1
sur clic d'un bouton je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = True
qui rend donc visible le sous formulaire SF2. Ce dernier sert a introduire
une serie de data... apres quoi,

sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.

Le probleme est qu'a ce moment le focus est sur SF2 et que Access ne permet
pas de cacher un control qui a le focus. Tout ca, j'ai (je pense) bien
compris.

J'ai essaye ceci :

Forms![B50_frmFiche].SetFocus
ou encore Forms![B50_frmFiche].R_Nom].SetFocus
ou encore Forms![B50_frmFiche]![SF1]![SF2].SetFocus

ca ne fonctionne tjrs pas.

Si quelqu'un a une nouvelle piste pour me debarasser de ce probleme qui me
suit maintenant depuis quelques mois.

Merci
Luc

8 réponses

Avatar
3stone
Salut,

"Luc de Kin"
| Je sais que je vais encopre me faire engueuler par certains (!)

Premier paragraphe :
http://www.mpfa.info/articles.php?lng=fr&pg=9

:-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Gilles MOUGNOZ
Bonjour a tous,
...
sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.
...
Merci
Luc




Bonjour, Luc

Si tu sais pertinemment que le sous-formulaire a le focus, il suffit de
déplacer le focus vers un autre controle actif.
Si le sous-form est le seul controle accessible de SF1, tu peux ajouter une
zone de texte de dimension 0*0.
Dans ce cas, tu fais ceci avant de masquer ton sous-form:
Forms![B50_frmFiche]![SF1]![ControlePresqueInvisible].SetFocus
Pour que cette zone ne soit pas accessible par le clavier, tu mets sa
propriété ArrêtTabulation (TabStop) à faux.

Bonne continuation

Avatar
Eric
Bonjour

Et Me.ParentUnControl.SetFocus avant de rendre SF2 invisible

Bonjour a tous,

Je sais que je vais encopre me faire engueuler par certains (!) mais je
recidive pas question d'hier tant le probleme est em... voire grave car sans
solution, je vais devoir changer partie de l'application... et c'est galere !
Sorry et merci encore....

Voici le texte cette question, un tout ti peu modifie par rapport a hier !

Le contexte :

1 formulaire principal : B50_frmFiche dans lequel se trouve un sous-forms SF1
sur clic d'un bouton je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = True
qui rend donc visible le sous formulaire SF2. Ce dernier sert a introduire
une serie de data... apres quoi,

sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.

Le probleme est qu'a ce moment le focus est sur SF2 et que Access ne permet
pas de cacher un control qui a le focus. Tout ca, j'ai (je pense) bien
compris.

J'ai essaye ceci :

Forms![B50_frmFiche].SetFocus
ou encore Forms![B50_frmFiche].R_Nom].SetFocus
ou encore Forms![B50_frmFiche]![SF1]![SF2].SetFocus

ca ne fonctionne tjrs pas.

Si quelqu'un a une nouvelle piste pour me debarasser de ce probleme qui me
suit maintenant depuis quelques mois.

Merci
Luc




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
Erreur !

Me.Parent.UnControl.SetFocus ?

Bonjour

Et Me.ParentUnControl.SetFocus avant de rendre SF2 invisible





--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Luc de Kin
Bonjour 3stone,

Je l'avais dit... Je vais relire toute la charte... promis !

Tiens au fait, pourquoi stone sans "s"

Allez, sans rancune, je le ferai plus... ze le zure !

Luc


Salut,

"Luc de Kin"
| Je sais que je vais encopre me faire engueuler par certains (!)

Premier paragraphe :
http://www.mpfa.info/articles.php?lng=fr&pg=9

:-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
Luc de Kin
Merci Gilles,

On essaye tout ca demain !



Bonjour a tous,
...
sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.
...
Merci
Luc




Bonjour, Luc

Si tu sais pertinemment que le sous-formulaire a le focus, il suffit de
déplacer le focus vers un autre controle actif.
Si le sous-form est le seul controle accessible de SF1, tu peux ajouter une
zone de texte de dimension 0*0.
Dans ce cas, tu fais ceci avant de masquer ton sous-form:
Forms![B50_frmFiche]![SF1]![ControlePresqueInvisible].SetFocus
Pour que cette zone ne soit pas accessible par le clavier, tu mets sa
propriété ArrêtTabulation (TabStop) à faux.

Bonne continuation






Avatar
Luc de Kin
On essaye ca aussi Eric, Merci
Luc



Bonjour

Et Me.ParentUnControl.SetFocus avant de rendre SF2 invisible

Bonjour a tous,

Je sais que je vais encopre me faire engueuler par certains (!) mais je
recidive pas question d'hier tant le probleme est em... voire grave car sans
solution, je vais devoir changer partie de l'application... et c'est galere !
Sorry et merci encore....

Voici le texte cette question, un tout ti peu modifie par rapport a hier !

Le contexte :

1 formulaire principal : B50_frmFiche dans lequel se trouve un sous-forms SF1
sur clic d'un bouton je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = True
qui rend donc visible le sous formulaire SF2. Ce dernier sert a introduire
une serie de data... apres quoi,

sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.

Le probleme est qu'a ce moment le focus est sur SF2 et que Access ne permet
pas de cacher un control qui a le focus. Tout ca, j'ai (je pense) bien
compris.

J'ai essaye ceci :

Forms![B50_frmFiche].SetFocus
ou encore Forms![B50_frmFiche].R_Nom].SetFocus
ou encore Forms![B50_frmFiche]![SF1]![SF2].SetFocus

ca ne fonctionne tjrs pas.

Si quelqu'un a une nouvelle piste pour me debarasser de ce probleme qui me
suit maintenant depuis quelques mois.

Merci
Luc




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




Avatar
Luc de Kin
Bonjour Gilles,

Ben, ca ne fonctionne pas ! Tout ce que tu ecris est pertinent et c'est plus
ou moins ce que je faisais.

Maintenant, cela fonctionne bien quand le SF2 apparait et que on ecrit rien
dedans. L'erreur apparait qd on introduit des donnees. Si apres ces intros,
on va cliquer sur SF1 (champ qcq), le clic (rendre invisible SF2)
fonctionne... Le probleme, c'est qu'on ne va pas obliger l'utilisateur a
aller cliquer quelque part avant de fermer SF2...

Luc





Bonjour a tous,
...
sur clic je fais : Forms![B50_frmFiche]![SF1]![SF2].Visible = False
qui devrait rendre SF2 de nouveau invisible.
...
Merci
Luc




Bonjour, Luc

Si tu sais pertinemment que le sous-formulaire a le focus, il suffit de
déplacer le focus vers un autre controle actif.
Si le sous-form est le seul controle accessible de SF1, tu peux ajouter une
zone de texte de dimension 0*0.
Dans ce cas, tu fais ceci avant de masquer ton sous-form:
Forms![B50_frmFiche]![SF1]![ControlePresqueInvisible].SetFocus
Pour que cette zone ne soit pas accessible par le clavier, tu mets sa
propriété ArrêtTabulation (TabStop) à faux.

Bonne continuation