Zum Hauptinhalt springen

! Hardware-Mausobjekt erstellen und verbinden (mouse.connect)

Diese Funktion ist erst in Versionen nach 20260805 verfügbar.

Deklaration​

Mausobjekt, Fehlermeldung = mouse.connect([ Eigenschaften ])

Parameter​

  • Eigenschaften
    Tabellenwert, optional; legt die Eigenschaften der Hardware-Maus fest

Rückgabewert​

  • Mausobjekt
    Hardware-Mausobjekt; wird bei erfolgreicher Erstellung zurückgegeben, bei einem Fehler wird nil zurückgegeben
  • Fehlermeldung
    Textwert; Grund für die fehlgeschlagene Erstellung

Beschreibung​

Jeder Aufruf erstellt ein unabhängiges Mausobjekt. Tastenstatus und Verbindungslebensdauer der einzelnen Objekte sind voneinander unabhängig. Eine erfolgreiche Rückgabe bedeutet, dass dieses Objekt aufgerufen werden kann; ob die Ziel-App reagiert, hängt weiterhin von iOS und der App ab. Beim Warten auf die Verbindung gibt diese Funktion den aktuellen Lua-Ausführungsthread frei.

Eigenschaften kann weggelassen werden. Die folgenden häufig konfigurierbaren Eigenschaften haben die angegebenen Standardwerte:

{
VendorID = 0x5858,
ProductID = 0x0006,
VersionNumber = 1,
Product = "XXTouch Mouse",
Manufacturer = "XXTouch",
Transport = "USB",
}

Zusätzlich können SerialNumber und LocationID festgelegt werden; bei anderen Eigenschaften wird die Wirksamkeit nicht garantiert. Transport beeinflusst nur, wie iOS oder die Ziel-App die Maus erkennt. Die Einstellung auf "BluetoothLowEnergy" stellt keine Bluetooth-Verbindung her, sendet keine Übertragung und führt kein Pairing durch; die Maus erscheint dadurch auch nicht in der Bluetooth-Liste anderer Geräte. Wenn das Senden einer beliebigen Mausoperation fehlschlägt, gibt dieses Objekt automatisch alle Tasten frei und trennt die Verbindung. Es wird nicht erneut über Touch-Eingaben versucht.

Beispiel​

local m, err = mouse.connect({
Product = "XXTouch Mouse",
})
assert(m, err)

assert(m:move(100, 0))
assert(m:down("left"))
assert(m:move(100, 50))
assert(m:up("left"))
assert(m:click("right", 60))
assert(m:click(13))
assert(m:scroll(0, 10))

m:disconnect()