Module: Unterschied zwischen den Versionen
Pwania (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Module == Module müssen im Gegensatz zu Klassen und Formen nicht instanziiert werden, die enthaltenen Prozeduren können also jederzeit direkt ausgeführt…“) |
Pwania (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
== Module == | == Module == | ||
Module müssen im Gegensatz zu Klassen und Formen nicht instanziiert werden, die enthaltenen Prozeduren können also jederzeit direkt ausgeführt werden. Öffentliche Prozeduren können zudem von jedem anderen Modul (inklusive Klassen, Formen und referenzierenden Projekten) aus aufgerufen werden. Der Nachteil hierbei ist jedoch, dass die Programmierung, wenn sie ausschließlich in Modulen stattfindet, sehr unübersichtlich werden kann, weil sämtliche öffentliche Prozeduren immer und überall als mögliche Befehle aufgeführt werden. Folgende Aufgaben sind für den Einsatz in Modulen gerade wegen ihrer permanenten Verfügbarkeit prädestiniert: | Module müssen im Gegensatz zu Klassen und Formen nicht instanziiert werden, die enthaltenen Prozeduren können also jederzeit direkt ausgeführt werden. | ||
Öffentliche Prozeduren können zudem von jedem anderen Modul (inklusive Klassen, Formen und referenzierenden Projekten) aus aufgerufen werden. | |||
Der Nachteil hierbei ist jedoch, dass die Programmierung, wenn sie ausschließlich in Modulen stattfindet, sehr unübersichtlich werden kann, weil sämtliche öffentliche Prozeduren immer und überall als mögliche Befehle aufgeführt werden. | |||
Folgende Aufgaben sind für den Einsatz in Modulen gerade wegen ihrer permanenten Verfügbarkeit prädestiniert: | |||
* Schnittstellen für die Benutzeroberfläche (z. B. Callback-Prozeduren des Menübandes) | * Schnittstellen für die Benutzeroberfläche (z. B. Callback-Prozeduren des Menübandes) | ||
* Definition von benutzerdefinierten Typen, welche in mehreren Modulen, Klassen und/oder Formen zur Verfügung stehen sollen | * Definition von benutzerdefinierten Typen, welche in mehreren Modulen, Klassen und/oder Formen zur Verfügung stehen sollen | ||
Zeile 18: | Zeile 24: | ||
=== Besonderheiten === | === Besonderheiten === | ||
Wenn Sie Formen exportieren, wird eine 'frm'- und eine 'frx'-Datei erzeugt. '''frmDialog.frm''' Die 'frm'-Datei enthält die Programmierung und kann wie eine 'mod'- und eine 'cls'-Datei mit einem beliebigen Texteditor betrachtet und bearbeitet werden. '''frmDialog.frx''' Die 'frx'-Datei ist eine Binärdatei und enthält die Definition der Oberfläche. Diese kann nicht mit einem Texteditor gelesen und bearbeitet werden. Die 'frx'-Datei kann nicht direkt in ein Projekt importiert werden, wird aber beim Import der 'frm'-Datei automatisch vom VBA-Editor mitgeladen. '''Bitte beachten:'''' Die 'frx'-Datei darf nicht gelöscht werden und muss sich im gleichen Verzeichnis wie die 'frm'-Datei befinden. Wenn sich die 'frx'-Datei nicht im gleichen Verzeichnis wie die 'frm'-Datei befindet, kann diese nicht importiert werden und ist somit unbrauchbar! | Wenn Sie Formen exportieren, wird eine 'frm'- und eine 'frx'-Datei erzeugt. | ||
'''frmDialog.frm''' | |||
Die 'frm'-Datei enthält die Programmierung und kann wie eine 'mod'- und eine 'cls'-Datei mit einem beliebigen Texteditor betrachtet und bearbeitet werden. | |||
'''frmDialog.frx''' | |||
Die 'frx'-Datei ist eine Binärdatei und enthält die Definition der Oberfläche. Diese kann nicht mit einem Texteditor gelesen und bearbeitet werden. | |||
Die 'frx'-Datei kann nicht direkt in ein Projekt importiert werden, wird aber beim Import der 'frm'-Datei automatisch vom VBA-Editor mitgeladen. | |||
'''Bitte beachten:'''' Die 'frx'-Datei darf nicht gelöscht werden und muss sich im gleichen Verzeichnis wie die 'frm'-Datei befinden. Wenn sich die 'frx'-Datei nicht im gleichen Verzeichnis wie die 'frm'-Datei befindet, kann diese nicht importiert werden und ist somit unbrauchbar! |
Version vom 10. Oktober 2018, 15:31 Uhr
Module
Module müssen im Gegensatz zu Klassen und Formen nicht instanziiert werden, die enthaltenen Prozeduren können also jederzeit direkt ausgeführt werden.
Öffentliche Prozeduren können zudem von jedem anderen Modul (inklusive Klassen, Formen und referenzierenden Projekten) aus aufgerufen werden.
Der Nachteil hierbei ist jedoch, dass die Programmierung, wenn sie ausschließlich in Modulen stattfindet, sehr unübersichtlich werden kann, weil sämtliche öffentliche Prozeduren immer und überall als mögliche Befehle aufgeführt werden.
Folgende Aufgaben sind für den Einsatz in Modulen gerade wegen ihrer permanenten Verfügbarkeit prädestiniert:
- Schnittstellen für die Benutzeroberfläche (z. B. Callback-Prozeduren des Menübandes)
- Definition von benutzerdefinierten Typen, welche in mehreren Modulen, Klassen und/oder Formen zur Verfügung stehen sollen
- Vorhalten von Daten und Eistellungen über einen Programmlauf hinaus
- Steuerprozeduren (als Einstiegspunkt in Lösungen)
- Bereitstellung von Ereignisklassen
Klassen
Siehe Klassenobjekte
Formen
Formen sind spezielle Klassenmodule, welche zusätzlich eine Oberfläche für die Interaktion mit dem Anwender zur Verfügung stellen.
Besonderheiten
Wenn Sie Formen exportieren, wird eine 'frm'- und eine 'frx'-Datei erzeugt.
frmDialog.frm
Die 'frm'-Datei enthält die Programmierung und kann wie eine 'mod'- und eine 'cls'-Datei mit einem beliebigen Texteditor betrachtet und bearbeitet werden.
frmDialog.frx
Die 'frx'-Datei ist eine Binärdatei und enthält die Definition der Oberfläche. Diese kann nicht mit einem Texteditor gelesen und bearbeitet werden.
Die 'frx'-Datei kann nicht direkt in ein Projekt importiert werden, wird aber beim Import der 'frm'-Datei automatisch vom VBA-Editor mitgeladen.
Bitte beachten:' Die 'frx'-Datei darf nicht gelöscht werden und muss sich im gleichen Verzeichnis wie die 'frm'-Datei befinden. Wenn sich die 'frx'-Datei nicht im gleichen Verzeichnis wie die 'frm'-Datei befindet, kann diese nicht importiert werden und ist somit unbrauchbar!