Ersatz für #define
-
- Senior Member
- Beiträge: 312
- Registriert: 24. September 2015, 10:05
- Wohnort: Biberbach, Austria
- Kontaktdaten:
Ersatz für #define
Für #define habe ich noch keinen Ersatz gefunden? Wie macht man das?
-
- Site Admin
- Beiträge: 529
- Registriert: 23. Februar 2010, 08:06
- Wohnort: Langenthal, Schweiz
- Kontaktdaten:
Re: Ersatz für #define
Konstanten können in .WL-Files abgelegt werden.
Einbinden mit EXTERN
z.B. im Code des Projekts, d.h. überall sichtbar
so kannst du überall auf diese Variablen zugreifen, z.B.
ab dort, wo du die Konstanten definierst, sind diese sichtbar.
In einem Dialogelement in den global declarations.
Geht für einzelne Konstanten (Variablen) genauso:
Einbinden mit EXTERN
z.B. im Code des Projekts, d.h. überall sichtbar
Code: Alles auswählen
EXTERN "KeyConst.WL"
Code: Alles auswählen
IF KeyPressed(VK_RETURN) THEN
In einem Dialogelement in den global declarations.
Geht für einzelne Konstanten (Variablen) genauso:
Code: Alles auswählen
VK_RETURN is int=0x0d
-
- Site Admin
- Beiträge: 529
- Registriert: 23. Februar 2010, 08:06
- Wohnort: Langenthal, Schweiz
- Kontaktdaten:
Re: Ersatz für #define
Du möchtest eventuell auch dir aus Xbase bekannte Schlüsselworte in Windev anwenden:
Da kreiere ich Funktionen, weil Windev mehr kann (z.B. mehr Variablentypen).
Beispiel EMPTY. In Windev ist dies Nospace.
Da ich diese Funktion erweitert anwende, auch für logische und numerische Werte, ergibt das folgende Funktion.
So gehts mit bei einigen Dingen. Einen Funktionssatz kannst du überigens als externe Komponente definieren und so in all deine Projekte einbinden.
Da kreiere ich Funktionen, weil Windev mehr kann (z.B. mehr Variablentypen).
Beispiel EMPTY. In Windev ist dies Nospace.
Da ich diese Funktion erweitert anwende, auch für logische und numerische Werte, ergibt das folgende Funktion.
Code: Alles auswählen
PROCEDURE Empty(LOCAL sbuf)
bLok is boolean = False
SWITCH TypeVar(sbuf)
CASE 1 // boolean
IF sbuf=False THEN
bLok=True
END
CASE 2,3,4,5,6,7,8,9,10,11,12 // integer, real
IF sbuf=0 THEN
bLok=True
END
CASE 16,17,18,19,24 // string
IF NoSpace(sbuf) = "" THEN
bLok=True
END
END
RESULT bLok
-
- Senior Member
- Beiträge: 312
- Registriert: 24. September 2015, 10:05
- Wohnort: Biberbach, Austria
- Kontaktdaten:
Re: Ersatz für #define
Danke Herbert, das hilft mal weiter.