Access-Paradies im Internet

 

  

::: Funktionen

 


Die Top Seite für Excel-VBA-Makros uvm.
Anwenderforum für Microsoft Office, Windows, VB
FAQ, kostenlose Tipps und Downloads zu Microsoft Office
Das große Visual-Basic Archiv
Access-Garhammer
Rainer's Archiv

::: Newsletter

 

Unser Newsletter informiert Sie topaktuell rund um alle Themen zu Microsoft Access, VBA usw.

 
  




::: ebay

 
1.000 Tage eBay Partnerprogramm - Volume II
 

38

 
  Tipps & Tricks -> Module / VBA / VBE -> Was ist ein Klassenmodul und was habe ich darunter zu verstehen?   



Kostenlose Tools und aktuelle News mit unserem monatlichen Access-Newsletter.
Jetzt eintragen!




Das Access-VBA Codebook

Neue Ausgabe!




Die VBA-Codesammlung, die bei keinem Entwickler
fehlen darf!



von Günther Kramer

Mausrad im Formular abschalten

Der VBA-Code schaltet innerhalb eines Formulars das Mausrad ab



Professionelle Accesstools für Datenbank-Entwickler



Das komplette Entwickler-Know-How auf einer CD.

  • über 24 Entwicklertools
  • unzählige Codebeispiele
  • Freeware-Module u. Tools
  • Großer Datenpool


  •  
       
     
     
     
      Was ist ein Klassenmodul und was habe ich darunter zu verstehen?
    Kurzinfo: Erklärung und Definition eines Klassenmoduls
    Access-Version(en): Access 97, 2000 und XP
    Autor: Manuela Kulpa
    Homepage: http://www.kulpa-online.de

     
     

     

    Auf der AP-Access-Tools Vol.1 finden Sie weitere 320 Tipps & Tricks sowie 250 Access-Beispiel/Anwendungen mit offenen Quellcode!

    Die Access-Tools-CD mit über 400 MByte Inhalt - für Access- und VB-Entwickler

  • 256 Access-Beispiele mit offenem Code
  • 45 Add-Ins und ActiveX-Komponenten (Freeware)
  • 16 VB-Projekt inkl. Source
  • 321 Tipps & Tricks für Access und VB
  • Plus 11 Entwicklerversionen (9 davon mit Source!)
  • Plus 3 Vollversionen und
  • Plus riesiger Datenpool

    Holen Sie sich jetzt Ihre AP-Access-Tools-CD zum Superpreis von nur EUR 24,95!

  •  
     

    Eine Klasse ist eine Definition für ein Objekt. Sie enthält Informationen dazu, wie sich ein Objekt verhalten sollte, einschließlich des Namens, der Methode, Eigenschaften und Ereignisse. Sie ist eigentlich nicht selbst ein Objekt, da sie nicht im Speicher vorhanden ist. Wenn Codeanweisungen durchgeführt werden, die sich auf eine Klasse beziehen, wird eine neue Instanz der Klasse, ein Objekt, im Speicher erstellt. Obwohl es nur eine Klasse gibt, können mehrere Objekte desselben Typs durch diese Klasse im Speicher erstellt werden.

    Du kannst dir eine Klasse wie ein Objekt auf dem Papier vorstellen, d.h. es liefert die Blaupause für ein Objekt, ist allerdings im Speicher selbst nicht vorhanden. Du kannst mit dieser Blaupause beliebig viele Objekte erstellen. Eine hilfreiche Analogie besteht vielleicht darin, eine Klasse mit einer Ausstechform und die Objekte mit Keksen zu vergleichen. Jeder Keks kann geringfügig abweichende Merkmale haben, aber für alle wurde dieselbe Ausstechform verwendet.

    Ähnlich wird auch jedes Objekt aus einer Klasse erstellt, die dieselben Elemente aufweist: Eigenschaften, Methoden und Ereignisse. Aber jedes Objekt verhält sich wie eine eigenständige Einheit. Die Eigenschaften eines Objektes können z.B. auf andere Werte festgelegt sein als die eines anderen Objekts vom selben Typ.

    Ein VBA-Projekt kann zwei verschiedene Arten von Klassenmodule enthalten: Basisklassenmodule, denen keine Benutzeroberfläche zugeordnet sind, und Klassenmodule, die zu einem Formular oder einer anderen Komponente gehören. Klassenmodule, die z.B. einem Formular zugeordnet sind, das einem Basisklassenmodul entspricht, setzten voraus, dass sie nur dann im Speicher existieren, wenn auch das Formular im Speicher vorhanden ist. Beispiele für Objekte, die Klassenmodulen zugeordnet sind, sind Access-Formular und Berichte.

    Ein kleines Beispiel:

    Code:
    ' Beispiel: MeineKlasse.cls
     
    ' MeineEigenschaft ist für Werte geeignet
    Private Eigenschaft
     
    ' Eigenschaft lesen
    Property Get MeineEigenschaft()
        MeineEigenschaft = Eigenschaft
    End Property
     
    ' Eigenschaft verändern
    Property Let MeineEigenschaft(Einstellung)
        Eigenschaft = Einstellung
    End Property
     
    ' ShowCopyright-Methode
    Public Sub ShowCopyright()
        Dim s As String
        s = "Beispielklasse: MeineKlasse" & Chr$(13) _
            & "Copyright Lisa Meyer - 2003"
        MsgBox s, vbInformation, "Info"
    End Sub

    Aufruf z.B. in einem Modul
    Code:
    Public Sub TestEigenschaft()
     
        ' MeineKlasse initialisieren
        Dim c As New MeineKlasse
     
        ' Aufruf von Let MeineEigenschaft
        c.MeineEigenschaft = 3
        ' Aufruf von Get MeineEigenschaft
        MsgBox "Du hast folgendes angegeben: " & c.MeineEigenschaft
        ' Aufruf ShowCopyright-Methode
        c.ShowCopyright
     
        ' MeineKlasse zerstören
        If Not c Is Nothing Then Set c = Nothing
     
    End Sub

    Ok, das Beispiel ist nicht unbedingt sehr anspruchsvoll - es zeigt aber eines der Grundprinzipien einer Klasse, die Nutzung von Eigenschaften (Properties) und Methoden.

    Ein weiterer Unterschied zu normalen Modulen sind die Eigenschaften Private Sub Class_Initialize() und
    Private Sub Class_Terminate(). Sobald eine Klassenvariable initialisiert wird, erfolgt automatisch der Aufruf von Class_Initialize. Wird diese Referenz wieder "zerstört" (z.B. durch Set c = Nothing), erfolgt automatisch der Aufruf von Class_Terminate.

    Es gibt sicherlich Unmengen von Beispielen zu diesem Thema - ich empfehle daher einen Blick in die Microsoft Access Visual Basic Referenz-Onlinehilfe: Stichwort Klassenmodule bzw. den erweiterten Zugriff auf die MSDN, z.B. MSDN - Microsoft Office XP Developer - What Is a Class?.




    Neuen Tipp melden Neuen Download melden

    Copyright 2000-2003 Microsys Kramer– Alle Rechte vorbehalten - Der Download von Tipps und Programmen von den Seiten www.access-paradies.de erfolgt auf eigene Gefahr. Microsys Kramer haftet nicht für Schäden, die aus der Installation oder der Nutzung von Tipps oder Software aus dem Download-Bereich erfolgen. Trotz aktueller Virenprüfung ist eine Haftung für Schäden und Beeinträchtigungen durch Computerviren ausgeschlossen. Schadenersatzansprüche, aus welchem Rechtsgrund auch immer, sind ausgeschlossen, wenn Microsys Kramer nicht Vorsatz oder grobe Fahrlässigkeit zu vertreten hat. Dies gilt auch für Ansprüche auf Ersatz von Folgeschäden wie Datenverlust.

     
     
     
     

    Access-Paradies © 1996-2011 Microsys Kramer


    Microsoft, Access, Word, Excel, Outlook, Outlook Express, Visual Basic und Windows sind eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

    Weiterempfehlung  |   Linken Sie uns  |   Impressum  |   Newsletter  |   Onlineshop