----VisualBasic5.0 ist eine leistungsstarke integrierte Entwicklungsumgebung, die automatisch nach Grammatikfehlern suchen und Programmierer zur Eingabe grammatikalischer Formate auffordern kann. Diese Funktionen verbessern die Codierungseffizienz erheblich. Als schnelles Entwicklungstool werden seine Eigenschaften jedoch auch in der Add-In-Technologie hervorgehoben. Damit können wir die VB-Entwicklungsumgebung stärken und anpassen: Wir können automatisch ein Modul zu allen PProjects hinzufügen; wir können ein Modul in jedem Modul durch ein anderes Modul ersetzen, wir können einen bestimmten Codeabschnitt im Programm finden und hinzufügen Es ersetzt es; theoretisch können wir diese Technologie sogar verwenden, um einen automatischen Codegenerator zu erstellen.
----Das Wesen der Add-In-Technologie besteht darin, dass die VB-Programmierumgebung selbst den Benutzern als Objektmodell zur Verfügung gestellt wird. Wir können ein Modul oder einen Code als Operationsobjekt zum Ändern und Optimieren verwenden. Im Folgenden stellen wir die Verwendung der Add-In-Technologie anhand eines Beispiels vor.
----Zum Beispiel möchten Sie diesen Code in Ihr Programm einbinden:
dimnIndexasinteger
nIndex=cStr(vsFlex.Text)
Ersetzen durch:
dimsIndexasstring
sIndex=Spread.text
----Die meisten Bearbeitungsprogramme, einschließlich Word, verfügen nicht über die Funktion zum Suchen und Ersetzen von mehreren Zeilen, und der VB5.0-Editor ist keine Ausnahme. Was soll ich tun?
----1. Öffnen Sie VB und wählen Sie „AddIn“, wenn Sie den Projekttyp auswählen. Auf diese Weise haben wir ein Projekt namens MyAddin geöffnet. Ändern Sie den Projektnamen nach Ihren Wünschen, z. B. „Test“.
----2. Öffnen Sie Addin.bas und Sie finden eine Unterroutine von AddToIni:
SubAddToINI()
DimErrCodeAsLong
ErrCode=WritePrivateProfileString("Add-Ins32", "Myaddin.Connect", "0", "vbaddin.ini")
EndSub
----Im Windows-Verzeichnis gibt es eine Datei namens vbaddin.ini. Bei jedem Start ermittelt VB anhand der Einstellungen dieser Datei, welche AddIn-Programme verfügbar sind. Die Funktion von AddToIni besteht eigentlich darin, das aktuelle Programm in vbaddin.ini zu registrieren. Ändern Sie „Myaddin.Connect“ in „Test.Connect“, sodass es dem aktuellen Projektnamen entspricht.
----3. Führen Sie AddToIni im Direktfenster aus, um die Registrierung des aktuellen Add-Ins abzuschließen.
----4. Öffnen Sie Connect.cls im Variablendeklarationsbereich: ImplementsIDTExtensibility
----IDTExtensibility ist die Schnittstelle für die Interaktion zwischen VB und AddIn-Programmen. Wenn VB im Add-In-Menü AddIdManager auswählt und auf das aktuelle Add-In-Programm „Test“ verweist, wird das OnConnect-Ereignis ausgelöst und das Programm IDTExtensibility_OnConnection() ausgeführt. Setzen Sie einen Haltepunkt in der folgenden Zeile:
----Debug.PrintVBInst.FullName
----Führen Sie das aktuelle Programm aus.
----5. Starten Sie eine weitere VB-Routine, um StandardEXE mit dem Namen Project1 zu generieren. Wählen Sie AddinManager aus dem Add-In-Menü. Wir erhalten eine Liste, wählen MyAddin aus und kehren zurück. Zu diesem Zeitpunkt wird der Test gestartet und angehalten
----Debug.PrintVBInst.FullName
----Beachten Sie, dass sich VBInstance (VBInst) auf die integrierte VB-Entwicklungsumgebung (VBEObject) bezieht, die das Add-In verwendet. Wir können es als Objekt bedienen. VBEObject enthält VBProjects, jedes VBProject enthält Vbcomponents, jede VBComponent entspricht einem Modul, jedem Formular, jeder Klasse oder jedem Modul.
----6. Wir führen im unmittelbaren Testfenster Folgendes aus:
----? VBInstance.ActiveProject.Name
----Sie können den Namen von Projekt1 erhalten.
----? VBInstance.ActiveProject.VBComponent(0).Name
----Sie können den Namen des ersten Moduls Form1 von Project1 erhalten.
----Bisher haben wir im Wesentlichen die technische Konnotation von AddIn erklärt. Der Rest ist leicht zu verstehen.
----7. Entfernen Sie im AddinManager von Project1 MyAddin.
----8. Ändern Sie den Test erneut, öffnen Sie frmAddin und ändern Sie ihn
PrivateSubOKButton_Click()
MsgBoxVBInstance.FullName
EndSub
Ändern zu:
PrivateSubOKButton_Click()
CallmReplace()
EndSub
PrivateSubmReplace()
DimoProAsVBProject
DimoComAsVBComponent
DimbFindAsBoolean
DimnFindLineasinteger
DimnfindColasinteger
Screen.MousePointer=vbHourglass
OnErrorGoToerrmReplace
SetoPro=VBInstance.ActiveVBProject
'Überprüfen Sie, ob das Programm gespeichert wurde
IfoPro.FileName=""ThenMsgBox"Bitte zuerst speichern!";ExitSub
ForEachoComInoPro.VBComponents
bFind=True
DoWhilebFind
'Finden Sie das zu ersetzende Codesegment
bFind=oCom.CodeModule.Find("dimnIndexasinteger",nFindLine,nfindCol,oCom.CodeModule.CountOfLines,500,True
IfbFindThen
IfoCom.CodeModule.Lines(nFindLine 1,1)="nIndex=cStr(vsFlex.Text)"
„Nach Feststellung ersetzen.“
oCom.CodeModule.ReplaceLine
nFindLine,"dimsIndexasstring"
oCom.CodeModule.ReplaceLine
nFindLine 1,"sIndex=Spread.text"
Anders
bFind=false
EndIf
EndIf
Schleife
NextoCom
Screen.MousePointer=vbDefault
ExitSub
errmReplace:
Piepton
Screen.MousePointer=vbDefault
MsgBox"FEHLER!"
EndSub
----9. Lassen Sie uns Test in den laufenden Zustand versetzen.
----10. Wenn wir Schritt 5 wiederholen, gibt es im Addin-Menü von Project1 einen zusätzlichen Eintrag „MyAddin“. Wir fügen Code hinzu, der in Projekt1 ersetzt werden soll, führen dann MyAddin aus und die Ersetzungsarbeiten werden abgeschlossen.
----11. Einige Freunde möchten nicht, dass das Wort „MyAddin“ im Addin-Menü erscheint, sondern ein Logo mit einer klareren Bedeutung, wie zum Beispiel „Ersetzen“. Ändern Sie ConnectClass----IDTExtensibility_OnConnection() von Test in
SetmcbMenuCommandBar=AddToAddInCommandBar("MyAddIn")
Wechseln Sie zu SetmcbMenuCommandBar=AddToAddInCommandBar("replace")
Wenn Sie MyAddin im AddinManager in ändern möchten
„Ersetzen“, Sie können Connect.cls mit Notepad öffnen und ändern: AttributeVB_Description="MyAdd-In"
Ändern zu: AttributeVB_Description="Replace"
----Die obige Einführung ist nur eine einfache Anwendung der AddIn-Technologie. Nachdem Sie deren Mechanismus verstanden haben, können Sie Ihre eigenen Tools entsprechend Ihren Anforderungen erstellen. Für einige professionelle Entwickler von Anwendungssoftware gilt: Je mehr Add-In-Tools sie ansammeln, desto höher ist ihre Codierungseffizienz. ->