2016-06-24 1 views
1

J'ai un programme à créer pour l'école et la fonction de déplacement de la souris prend beaucoup de place et rend le projet compliqué. Ma question, Y at-il un moyen de déplacer les fonctions vers un module?Fonction et modules de MouseMove

Ce ne sont que quelques-unes des fonctions MouseMove:

Private Sub Frame4_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 
    StatusBar1.SimpleText = "Ready..." 
End Sub 

Private Sub Text2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 
StatusBar1.SimpleText = "First Name of Student" 
End Sub 

Private Sub Text3_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 
StatusBar1.SimpleText = "Last Name of Student" 
End Sub 

Merci beaucoup pour l'aide. :)

+1

I don Vous ne rencontrez pas de problème avec ce code, mais vous pouvez essayer de placer le texte d'état dans la propriété des contrôles 'Tag'. Vous pouvez alors utiliser une seule méthode qui prend un contrôle en paramètre, a un gestionnaire d'erreurs au cas où le contrôle n'a pas de propriété 'Tag' à lire, lit le' Tag' et écrit le texte dans StatusBar1.SimpleText. Cela va encore vous laisser appeler votre méthode de chaque événement MouseMove contrôles et vous gagne peu. Si vous vous sentez vraiment ambitieux, vous pouvez écrire votre propre contrôle de textbox et élever votre propre événement. – jac

Répondre

0

Ce sont des événements prédéfinis appartenant au formulaire. Vous ne pouvez pas les déplacer hors du formulaire dans un module.

Vous créez un module avec une fonction de StatusBarUpdate que vous avez appelé à chaque fois que vous vouliez changer la barre d'état ... mais ... que hardley semble utile de remplacer une ligne de code avec une ligne de code

+1

Merci beaucoup pour l'aide, il suffit de garder les codes à barres de statut en bas pour ne pas interférer avec les autres codes. –