Leider war es notwendig, in RapaGUI 2.0 ein paar Designänderungen vorzunehmen. Dies könnte einige Anpassungen in Ihren Skripten erfordern, um sie mit RapaGUI 2.0 kompatibel zu machen. Bitte lesen Sie sich die folgenden Hinweise durch, um zu erfahren, ob Ihr Skript betroffen ist.
moai.Set("radio", "active", 5) ; löst Ereignis-Callback aus!
p_DoSomething()
|
Mit RapaGUI 1.x würde die Callback-Funktion für Radio.Active
nicht vor dem Befehl WaitEvent() aufgerufen werden, d.h. p_DoSomething()
würde immer vor der Callback-Funktion für Radio.Active
aufgerufen. In RapaGUI 2.0 ist dies jetzt anders. Der Ereignis-Handler
wird immer dann aufgerufen, wenn das Ereignis eintritt. Das bedeutet,
dass p_DoSomething() nach der Callback-Funktion für Radio.Active
aufgerufen wird, da der Aufruf von moai.Set() die
Ausführung des Ereignis-Handlers sofort nach dem Ändern des aktiven
Radioelements erzwingt.
WaitEvent() wird nie zurückkehren, da auf den meisten Plattformen
ein Aufruf von WaitEvent() ein einfaches Ticket ist, das die
Hauptereignisschleife Ihres Programmes startet und nicht mehr
zurückkehrt. Nur auf AmigaOS und kompatiblen Geräten kommt WaitEvent()
immer noch von Zeit zu Zeit zurück, aber Sie sollten sich nicht
auf dieses Verhalten verlassen, da es sich auf anderen Plattformen
anders verhält. Wenn Sie möchten, dass WaitEvent() benutzerdefinierte
Callbacks ausführt, verwenden Sie einfach den neuen Befehl RunCallback()
von Hollywood 9.0.
WaitEvent() verwenden. Es
ist nicht mehr zulässig, eine benutzerdefinierte Ereignisverwaltung
mit CheckEvent() oder CheckEvents() zu implementieren. Das
Steuern normaler Hollywood-Skripte über RapaGUI funktioniert
nur, wenn auch WaitEvent() verwendet wird.
True
setzen (und möglicherweise auch Application.Sleep
auf True setzen) und dann können Sie das eigentliche Verhalten
des Dialogs durch wiederholtes Aufrufen eines Verwaltungsbefehls
implementieren, entweder mit SetTimeout() oder dem neuen Befehl
RunCallback() von Hollywood 9.0. Sehen Sie sich das aktualisierte
Dialog-Beispiel (mitgeliefertes Hollywood-Script) an, um eine
Referenzimplementierung eines nicht blockierenden Dialogs zu
sehen, der diese Technik verwendet (wählen Sie "Test progress bar dialog"
aus dem Menü).
WaitLeftMouse(),
WaitSampleEnd(), InKeyStr() etc. Diese können nicht mehr zusammen
mit RapaGUI verwendet werden.
False gesetzt, ohne ein Ereignis auszulösen.
TextGfx, sondern auf Gfx eingestellt.