Lade...
 

SetDesignMode, SetNetronicDesignMode, GetDesignMode

GetDesignMode, SetDesignMode

GetDesignMode

Stack
Stack Position Beschreibung
Stack(In) Top ein COM-Objekt oder der COM-Manager
Stack(Out) Top 0 oder 1

SetDesignMode
SetNetronicDesignMode

Stack
Stack Position Beschreibung
Stack(In) Top ein COM-Objekt oder der COM-Manager
  Top-1 0 oder 1
Stack(Out) Top -

ClassiX® verhält sich gegenüber COM-Objekten (insbesondere Controls) entweder als  Entwicklungs-(Design-)oder als Laufzeit-(Runtime-)Umgebung. Bei herkömmlicher Verwendung von Komponenten entspricht dies zum einem dem Entwickeln in einer Entwicklungsumgebung wie z.B. Microsoft Visual C++ und der späteren Ausführung der damit gebildeten *.exe auf jedem beliebigen System.

Aus Sicht der Komponente ist diese Unterscheidung vor allem aus lizenzrechtlichen Aspekten von Bedeutung: So bedarf es einer besonderen (höherwertigen und teureren) Lizenzierung, um eine Applikation zu erstellen, die diese verwendet. Die Verwendung der Komponente mit der fertig erstellten Applikation hingegen benötigt entweder gar keine oder eine geringere Lizenz.

Da ClassiX® durch seine Architektur generell sowohl Entwicklungswerkzeug, als auch Laufzeitumgebung ist, muss, um der Lizenzierung eines Controls Rechnung zu tragen, diese für verschiedene Verwendungen künstlich umgeschaltet werden.
Hierzu dienen diese Funktionen.

Werden sie am COM-Manager (GetManager(COM)) ausgeführt, so gilt der gewählte (bzw. erfragte) Modus für alle zukünftigen Aufrufe von CreateControl. Ausgeführt an einem Control-Widget wird der Zustand dieses Widgets erfragt bzw. geändert.
Werden mehrere Controls parallel betrieben kann sich also ein Teil im Design-, der Rest im Runtime-Modus befinden. Die globale Einstellung im COM-Manager ermöglicht es auch Controls zu genügen, die bereits zur Erstellzeit (Aufruf von CreateControl) im Design-Modus sein müssen, um korrekt ansprechbar zu sein.