cPOS - Fragen zu Eventhandler und Sensoren 6i6i - Sa 14 Aug, 2010 14:08 Titel: Fragen zu Eventhandler und Sensoren
Hallo!
Hätte 4 Fragen zu Eventhandler und Sensoren:
1. Kann ich den Abspielstatus irgendwie und in eine Eventhandlerlogik einbauen (also ob "PAUSE" aktiv ist / die Wiedergabe gerade angehalten ist,...)?
2. Kann ich den Status des Line In Eingangs abfragen (ob mute oder nicht mute)?
3. Ich habe eine Logik, die eigentlich immer lauft (true = on) für die Ausgabe auf mein Borddisplay über CAN. Derzeit schreibt er einmal pro Sekunde den Text raus. Mit dem Haken "Hochgeschwindigkeit" dann glaube ich alle 10ms. Kann ich dazwischen auch noch irgendwie einen Wert setzen (z.B. 500ms)?
4. Ich bekomme den Anrufenamen als CAN Message und kann diese auch mithilfe eines Sensors einlesen. Da die CAN Message aber in HEX kodiert ist müsste ich diese vorher in Text umwandeln. Dazu habe ich im Source eine Funktion (FisHexToStr(strtext String)) implementiert, welches dies erledigt. Ich müsste jetzt nur noch irgendwie einem Label im Skin den Rückgabewert der Funktion FisHexToStr(fsesensoroutput) zuweisen können? Hätte wer einen Lösungsvorschlag?
Danke im Vorraus für die Antworten. 6i6i - Fr 20 Aug, 2010 08:07 Titel:
Hat keiner eine Antwort auf wenigstens eine Frage? 6i6i - So 22 Aug, 2010 21:42 Titel:
Habe nochmal im Source geschaut und die Funktionen gefunden. Sie funktionieren aber nicht im Eventhandler:
Zufinden in der Funktion Function GetBoolValue(strFunction As String) As Boolean
Case "mute"
Select Case strSelection
Case "main"
GetBoolValue = vol.VolumeMute
Case "line"
GetBoolValue = vol.LineMute
Hab mal im "line" Case folgendes dazugemacht.
Call DebugError("LineMuteStatus", 1, vol.LineMute)
Sobald ich jetzt Cpos Starte und im Eventhandler z.B. folgendes eingetragen habe:
Dann bekomm ich als Debug Output immer den richtigen boolschen Wert zurück, je nachdem ob das häcken im Windows Mixer bei Line Mute gesetzt ist oder nicht. Das Textfeld mit dem Text Hallo (showinfo_Hallo) erscheint aber nie???
Das selbe Problem beim Pause-Status.
Case "pause"
GetBoolValue = (frMain.Player.playState = wmppsPaused) And (bPlaystate = 0)
Call DebugError("PauseStatus", 1, (frMain.Player.playState = wmppsPaused) And (bPlaystate = 0))
Wenn ich zum Test die Taste "j" im Eventhandler als Source definiere:
Logic0Function=showinfo_Hallo
Logic0Event=key_74
Logic0Options=1
Logic0Delay=0
Logic1Function=0
Funktioniert die Ausgabe des Textes Hallo ohne Problem im Infofeld. MR Action - Mi 01 Sep, 2010 17:19 Titel:
Also den HighSpeed-Speed kannste meine ich über nen Schieber einstellen...
Bei den Mutegeschichten, haste ja schon selbst im Source geguckt - muss ich so ausm Stehgreif auch passen...
Was deine Funktion angeht, gibts zwei Funktionen in der SkinValues.bas oder Skin.bas oder so... Da drin stehen ne halbe Tonne case Anweisungen, da bauste einfach noch eine dazu, die dann deine Funktion aufruft und über die Variablen die cpos ja inzwischen kann, übergibste dann das, was in deinem Sensor steht...