Dans la technologie et l'application des classes Visual Basic 6.0 (partie 1) (ci-après dénommée ci-dessus), nous avons discuté de la théorie des classes, de la création de classes et de la pratique de programmation des méthodes de classe. être largement utilisé en génie logiciel. La chose la plus importante à propos de l'application est qu'elle peut être très pratique à fermer. L'installation de nombreux attributs requis pour la programmation permet non seulement aux programmeurs de surmonter dans une certaine mesure la complexité de la conception et du débogage des contrôles (ocx) et des bibliothèques de liens (dll), mais améliore également la simplicité et l'efficacité du code du programme - cet article discutera de la classe complète. programmation, y compris les méthodes, les propriétés et les événements de base.
(1) Caractéristiques et définitions des attributs de classe ;
Semblables aux propriétés des contrôles standard, les propriétés de classe permettent à l'utilisateur d'attribuer des valeurs dans une plage de données spécifiée, et ces valeurs sont partagées par diverses parties du code au sein de la classe. L'acquisition et le transfert d'attributs doivent être programmés via les instructions PRpertyLet et PropertyGet. Bien entendu, nous devons d'abord définir les variables correspondantes au niveau global ou module dans la classe.
(2) Attributs et définitions de base des événements ;
Semblables aux événements du formulaire, les classes ont également deux événements de base, Class_Initialize (déclenché lorsque la classe est chargée) et Class_Terminate (déclenché lorsque la classe est déchargée), tous deux privés. En fait, nous pouvons complètement ignorer ces deux événements – à condition de penser à compléter les méthodes et propriétés de la classe.
Les classes peuvent également définir leurs propres événements, qui sont similaires au format de programmation des méthodes, sauf que le mot-clé WithEvents est requis pour la déclaration des paramètres, et que l'événement ne peut pas avoir de paramètres nommés ou de paramètres facultatifs, et qu'il n'a pas de valeur de retour.
En fait, des méthodes et propriétés bien structurées peuvent remplacer complètement les événements de classes structurées de manière complexe.
(3) Exemples de programmation de méthodes de classe, d'événements et de propriétés ;
Le but de ce programme est de contrôler tous les tris majuscules, minuscules et inversés du contenu de la zone de texte du formulaire à travers les classes.
Afin de faciliter l'écriture et l'appel du code, j'ai référencé la méthode de programmation d'énumération dans la classe.
Le code suivant est dans la classe Class1 :
OptionExplicite
PrivateWithEventsmyTXTAsTextBox
'Interface des paramètres de méthode
PublicEnumsTYLE
Attribut minuscule de Lcaseit
Attribut de capitalisation de Lbigit
Attribut de tri inversé de Nlogoit
FinEnum
'Énumération personnalisée, utilisée pour implémenter l'affectation automatique des attributs
PrivémvarBiaozhiAssTYLE
'Implémenter la connexion des constantes d'énumération
PublicFunctiondONE()AsString'
'La méthode DONE est utilisée pour définir le
'Effectuer les opérations de conversion de caractères correspondantes dans la zone de texte du formulaire
'Et renvoie la chaîne convertie
IfmvarBiaozhi=NlogoitThen
dONE=StrReverse(monTXT)
'Tri inversé
SinonIfmvarBiaozhi=LcaseitThen
dONE=LCase(monTXT)
'Forcer la conversion en minuscules
Autre
dONE=UCase(monTXT)
'Forcer la conversion en majuscules
FinSi
FinFonction
'La méthode DONE se termine
PublicPropertyLetBiaozhi (ByValvDataAssTYLE)
'Obtenir la valeur attribuée à l'attribut
mvarBiaozhi=vDonnées
Propriété de fin
PublicPropertyGetBiaozhi()AssTYLE
'Transférer les valeurs d'attribut à la classe
SetBiaozhi=mvarBiaozhi
Propriété de fin
PublicSubAttach(itTEXTAsTextBox)
'Méthode de classe de connexion
SetmyTXT=itTEXT
FinSub
PrivateSubClass_Initialize()
'Cet événement est activé lorsque la classe est chargée
MsgBox "Bonjour ! Ce programme vous montre les techniques de programmation utilisant des méthodes de classe, des propriétés et des événements !"
FinSub
PrivateSubClass_Terminate()
'Cet événement est activé lorsque la classe est déchargée
MsgBox "Bonjour ! Pensez à renseigner le code d'annulation de l'objet dans Class_Terminate !"
FinSub
'Le code de la classe est partout
(4) Programmation de référence du code du formulaire ;
Ajoutez le contrôle de texte TEXT1, le contrôle de liste déroulante COMBO1 et le bouton de commande COMMAND1 (CAPTION = "Démarrer la conversion") pour former FORM1 et ajustez les trois contrôles aux positions appropriées.
DimmyTAsNewClass1
'Référence de classe
PrivateSubForm_Load()
Combo1.Effacer
Combo1.AddItem "Conversion de majuscules de chaîne"
Combo1.AddItem "Conversion de chaîne en minuscules"
Combo1.AddItem "Tri inverse des chaînes"
Combo1.ListIndex=0
'Ajouter des options d'attribut à la zone de liste
FinSub
PrivateSubCommand1_Click()
'Activer la classe lorsque le bouton de commande est enfoncé
monT.AttachText1
'Connexion des paramètres de méthode
SelectCaseCombo1.ListIndex
Cas0
monT.Biaozhi=Lbigit
Cas 1
myT.Biaozhi=Lcaseit
Cas2
myT.Biaozhi=Nlogoit
FinSélectionner
'Selon la sélection dans la zone de liste, attribuez une valeur à l'attribut Biaozhi de la classe
'Notez que dans l'environnement de programmation, les valeurs d'attribut ci-dessus sont automatiquement ajoutées
Text1.Text=monT.dONE
'Renvoie la chaîne après le tri
FinSub
PrivateSubForm_Unload (CancelAsInteger)
SetmyT=Rien
Fin
'Bonnes habitudes de programmation
FinSub
Que diriez-vous, notre code a l'air si concis qu'on a l'impression d'utiliser un contrôle, qui peut non seulement être appelé à volonté, mais aussi utiliser facilement la fonction d'invite automatique de VB.
(5) Résumé des techniques de programmation en classe ;
À proprement parler, les classes sont une technologie très utile dans la programmation VB, et elles sont également difficiles à apprendre et à maîtriser. Les classes sont largement et efficacement utilisées dans les projets logiciels à grande échelle, afin d'améliorer les logiciels. Pour plus d'efficacité et de clarté du code, vous devez éviter d'utiliser davantage de modules de classe, de contrôles et de bibliothèques de connexions et les remplacer par des modules standard.
L'exemple de code présenté dans cet article est relativement simple, mais il couvre tous les aspects de la technologie de programmation de modules. J'espère que les débutants pourront en tirer des leçons et que les programmeurs pourront en discuter ensemble. Nous devrions croire que, quelle que soit la complexité des immeubles de grande hauteur, ils sont constitués de briques ordinaires. De même, quelle que soit la complexité des projets logiciels, ils sont composés d'énoncés de programme de base. Les passionnés de programmation et les programmeurs sont la seule différence. L’analyste est que les programmes construits avec les mêmes instructions de programme sont différents. ->