Eigene Objekte dem Designer hinzufügen

Analog zur Erweiterung der Designer-Funktionen können Sie auch eigene Objektarten definieren und an List & Label anmelden. Die neuen Objekte stehen dem Benutzer anschließend in gewohnter Weise über die Symbolleiste links und das Menü zur Verfügung.

Zum Hinzufügen steht Ihnen auch hier eine spezielle Komponente zur Verfügung. Um diese nutzen zu können, müssen Sie die Datei cmll30ox.ocx in Ihre IDE einbinden.

Nach dem Hinzufügen dieser Komponente zu Ihrem Formular können Sie die Eigenschaften des neuen Objekts im Eigenschaftsfenster der Komponente festlegen.

Die Tabelle zeigt eine Übersicht:

Eigenschaft

Beschreibung

Name

Der eindeutige Name des Objekts

Description

Diese Beschreibung wird im Designer angezeigt.

Sie darf Leerzeichen enthalten, sollte jedoch nicht länger als 30 Zeichen lang sein.

Icon

Das Icon des Objekts, das im Designer in der Symbolleiste und im Menü angezeigt wird. Es sollte sich um ein 16x16 Pixel großes Icon mit 16 Farben handeln.

 

Die Komponente bietet Ihnen drei Ereignisse an. Zunächst wird bei der Anlage eines neuen Objekts durch den Benutzer das Ereignis DesObj_Picture_CreateDesignerObject ausgelöst. Falls gewünscht können Sie dem Benutzer hier einen Einstiegsdialog anzeigen. Dies kann beispielsweise ein Assistent sein, der dem Benutzer die Konfiguration des neuen Objekts vereinfacht. Bietet sich die Verwendung im konkreten Fall nicht an, verzichten Sie einfach auf die Behandlung des Ereignisses.

Das Ereignis DesObj_Picture_EditDesignerObject wird ausgelöst, wenn der Benutzer doppelt auf das neu eingefügte Objekt klickt oder aber den Eintrag "Eigenschaften" aus dem Kontextmenü wählt.

Nachdem der Benutzer das Objekt editiert hat, werden Sie von List & Label aufgefordert, das Objekt darzustellen. Es wird hierzu das Ereignis DesObj_Picture_Draw­DesignerObject ausgelöst. Sie können nun mit den bekannten Methoden im Arbeitsbereich zeichnen. Hierbei ist selbstverständlich auch der Zugriff auf die hinterlegten Objekteigenschaften möglich beziehungsweise sinnvoll.