2010-07-06 5 views
0

grâce à l'avance pour toute aideFaire une pop forme la forme activée uniquement - MS Access

J'essaie de comprendre comment faire sous forme la seule mise au point disponible pop-up pour un utilisateur dans une base de données. De sorte que l'utilisateur est essentiellement obligé de compléter/enregistrer/fermer le sous-formulaire avant de pouvoir retourner au formulaire parent. J'imagine que cela implique de désactiver le formulaire parent et d'essayer de le garder au bas de la pile pour ainsi dire. J'essaie de faire ça en tant que sous-programme public, malheureusement je ne vais pas très loin! Il me semble que ce type de fonctionnalité serait assez commun lorsque des formulaires pop-up sont utilisés, est-ce que je néglige une caractéristique commune?

Toute indication serait grandement appréciée.

Vive

Noel

Répondre

2

Très simple:
DoCmd.OpenForm kfrmArt,acNormal,,,,acDialog
Cela arrêtera tout le traitement des lignes suivantes jusqu'à ce que votre formulaire se ferme.

+0

Great Patrick, exactement ce que j'étais après – noelmcg

0

Vous pouvez également définir la propriété modale du formulaire sur true. Voici la documentation à ce sujet: http://msdn.microsoft.com/en-us/library/aa195316(office.10).aspx

+1

Cela ne met pas le code en pause, cependant, et il a d'autres effets secondaires qui s'ouvrent avec acDialog pas. Pour ce que ça vaut, j'ai programmé dans Access depuis 1996 et je ne mets jamais la propriété Modal à TRUE - je peux faire tout ce dont j'ai besoin avec des formes d'ouverture avec le paramètre acDialog. –

+0

Lorsque vous l'appelez pour utiliser la commande acDialog derrière les scènes, elle définit la propriété modal sur true et la propriété pop-up sur true. from MSDN article: "Remarque Vous pouvez utiliser le paramètre Dialog de l'argument d'action Window Mode de l'action OpenForm pour ouvrir un formulaire avec ses propriétés Modal et PopUp définies sur Oui." – Fink

+0

@Fink: ce n'est pas vrai. Je viens de tester, en prenant un formulaire non-Modal, non-Popup et dans l'événement OnLoad en mettant ceci: Debug.Print "Modal:" & Me.Modal et Debug.Print "PopUp:" & Me.PopUp. Lorsque j'ai utilisé DoCmd.OpenForm avec l'argument acDialog, ces deux commandes ont toutes deux retourné FALSE. –

Questions connexes