beginformulier wordt over vervolgformulier geplaatst

Status
Niet open voor verdere reacties.

jobwol

Gebruiker
Lid geworden
11 aug 2009
Berichten
24
In mijn database (Acces 2003) zit een storende fout.
Ik heb twee formulieren:
Formulier A = beginformulier
Formulier B = Filterformulier
Bij het opstarten van de DB krijg je een beginscherm (formulier). Van daaruit kun je klikken op een knop om formulier B te openen. Na het drukken op de knop opent hij Formulier B. Echter een seconde later schuift Formulier A weer naar voren en plaatst hij het over formulier B (dit formulier B blijft wel gewoon openstaan). Je moet dan weer handmatig klikken op formulier B om dit weer naar voren te krijgen.

Dit gebeurt alleen de eerste keer als ik vanaf formulier A, formulier B wil openen. De keren erna (zolang ik de DB niet sluit) gaat het wel goed. Is het een instelling die verkeerd staat?
 
Vast wel, alleen weten we natuurlijk zonder code niet wat je precies doet. Dus graag de code erbij. Of de db...
 
Ik werk liever met het onzichtbaar maken van formulieren, en weer zichtbaar maken als ze nodig zijn. Dus als je het formulier Filter opent, doe je dat zo:

Code:
    stDocName = "Filter"
    Me.Form.Visible = False
    DoCmd.OpenForm stDocName, , OpenArgs:=Me.Form.Name

Om het formulier weer te laten zien zet je een code op het formulier Filter bij de gebeurtenis <Sluiten>.

Code:
Private Sub Form_Close()
    If Not Me.OpenArgs & "" = "" Then
        If CurrentProject.AllForms(Me.OpenArgs).IsLoaded Then
            Forms(Me.OpenArgs).Form.Visible = True
        End If
    End If
End Sub

En da's alles! Werkt op exact dezelfde manier ook bij rapporten, dus daar gebruik ik het ook. Door de Formuliernaam als variabele mee te geven, kun je in no time al je formulieren openen en verbergen met dezelfde code.
 
dank je wel voor de goede tip. Dit is inderdaad wat ik zocht!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan