Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/07/2011, 09h37   #1
Nouveau Membre du Club
 
Inscription : octobre 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 71
Points : 30
Points : 30
Par défaut Déplacer des champs dans un formulaire, mais aussi au dessus des images

Bonjour,

J'aimerais pouvoir déplacer mes champs dans un formulaire ? Pas en mode Création !

En gros, j'ai un formulaire avec une image de fond, sur cette image se trouvent plusieurs champs, et j'aimerais que l'utilisateur ai la possibilité de un, changer le contenu des champs (aucun problème), deux, pouvoir déplacer ces champs sur l'image de fond avec évidemment mémorisation des nouvelles coordonnées... Es-ce possible et comment ?

Merci d'avance pour vos lumières !
CrasherSEP est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 11h37   #2
Nouveau Membre du Club
 
Homme
Chef de projet MOA
Inscription : juillet 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : juillet 2011
Messages : 22
Points : 32
Points : 32
Bonjour,

Une partie de la réponse :
Pour déplacer un contrôle d'un formulaire tu peux utiliser l'évènement MouseUp de ce contrôle.

Exemple ci dessous avec un bouton nommé Commande0.

Il faut ajouter ajouter cette procédure sur tous les contrôles que tu souhaites déplacer.

Code :
1
2
3
4
5
6
7
8
9
 
Private Sub Commande0_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = acLeftButton And _
        Commande0.Left + X > 0 And _
        Commande0.Top + Y > 0 Then
        Commande0.Left = Commande0.Left + X
        Commande0.Top = Commande0.Top + Y
    End If
End Sub
Cette procédure permet de délacer le contrôle faisant glisser la souris tout en maintenant le bouton gauche de la souris appuyé. Lorsque le bouton de la souris est relaché , le contrôle trouve sa nouvelle position à l'emplacement où se trouve le pointeur de la souris.

Il faut l'adapter si tu veux ajoute run test qui vérifie que le pointeur de la souris est bien sur l'image.

Pour que le contrôle soit placé au dessus de l'image, il faut que tu règles au préalable la position de tes contrôles :
en mode création , pour l'image - clic droit - position - mettre en arrière plan

J'ai fait le test avec Access 2007, et hélas, si on ferme le formulaire et qu'on le réouvre, les boutons se retrouvent à leur emplacement d'origine. Je n'ai pas trouvé comment sauvegarder les positions des objets déplacés...
dave92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 11h54   #3
Nouveau Membre du Club
 
Inscription : octobre 2009
Messages : 71
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 71
Points : 30
Points : 30
Merci, mais j'aimerais voir le déplacement !

Dans ton exemple, le déplacement se fait lors de relâchement de la souris... J'aimerais voir le déplacement à la façon "Fenêtre Windows"...
CrasherSEP est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2011, 11h59   #4
Nouveau Membre du Club
 
Homme
Chef de projet MOA
Inscription : juillet 2011
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : juillet 2011
Messages : 22
Points : 32
Points : 32
c'est plus cher !!
dave92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h33.


 
 
 
 
Partenaires

Hébergement Web