Object und Codeblock ( String ) [erledigt]

Klassen, Objekte, Methoden, Instanzen

Moderator: Moderatoren

Object und Codeblock ( String ) [erledigt]

Beitragvon AUGE_OHR » Mi, 28. Jan 2015 23:26

hi,

wenn ich einen String für einen Codeblock bauen will bekomme ich ein Object "so" nicht rein.
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,"+oObject+" ,, oMain}"
auch wenn ich eine Functionen nehme
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,"+MyFun()+" ,, oMain}"
komme ich nicht weiter ... :banghead:

aber irgendwie muss es doch gehen ... aber wie ?
Zuletzt geändert von AUGE_OHR am Do, 29. Jan 2015 6:42, insgesamt 1-mal geändert.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10315
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Object und Codeblock ( String )

Beitragvon Tom » Mi, 28. Jan 2015 23:44

Einfach ohne Anführungszeichen:
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,oObject,, oMain}"
cString := "{|| PostAppEvent(myE_Event,MyFun(),, oMain}"

:wink:
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6728
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin

Re: Object und Codeblock ( String )

Beitragvon Tom » Do, 29. Jan 2015 0:31

Und wenn sich oObject und MyFunc() auf etwas beziehen, das im Moment der Codeblockerzeugung (Makro) ausgewertet werden soll, dann so:

Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,'"+oObject+"',, oMain}"


Einfache Anführungszeichen vor/hinter den normalen.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6728
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin

Re: Object und Codeblock ( String )

Beitragvon AUGE_OHR » Do, 29. Jan 2015 1:25

hi,
Danke für deine Antworten.
Tom hat geschrieben:Und wenn sich oObject und MyFunc() auf etwas beziehen, das im Moment der Codeblockerzeugung (Makro) ausgewertet werden soll, dann so:
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,'"+oObject+"',, oMain}"

Einfache Anführungszeichen vor/hinter den normalen.
aber bei der Syntax "schreit" er doch
Code: Alles auswählen
String + Object
auch bei dem Beispiel
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,oObject,, oMain}"
gibt es ein Problem beim EVAL() -> oObject "unbekannt" wenn man es nicht PRIVATE macht.
Code: Alles auswählen
cString := "{|| PostAppEvent(myE_Event,MyFun(),, oMain}"
hm ... die Function direkt in den String statt "+MyFun()+" ... das muss ich mal ausprobieren


ich muss vielleicht hinzufügen warum ich per String einen Codeblock zusammenbaue.
ich bin nicht im gleichen Thread wie Main, denn "gleich" als Codeblock wäre es ja kein Problem mit Objecten.
ich möchte einen Xbase++ Code Slot "auslösen".
Code: Alles auswählen
o:buttonClick := {| oButton,uNil,self | ... }
das Problem ist nun "mp1" = oButton
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10315
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg

Re: Object und Codeblock ( String )

Beitragvon AUGE_OHR » Do, 29. Jan 2015 6:41

moin,

ich habe falsch gedacht ... der Codeblock Slot wird ja gewöhnlich schon im Xbase++ Thread "belegt".

um ihn zu aktivieren muss ich aus meinem Thread nicht ein PostAppEvent() schicken sondern den Codeblock in meinem Thread EVALulieren wobei ich die Parameter "mp1" ja übergeben kann ;)
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10315
Registriert: Do, 16. Mär 2006 8:55
Wohnort: Hamburg


Zurück zu OOP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast