Hallo Lutz,
jetzt habe ich es auch gesehen:
Wenn ich das hier
nach Typescript umschalte, macht Makecode folgendes daraus:
input.onButtonEvent(Button.A, ButtonEvent.LongClick, function () {
basic.showNumber(0)
})
input.onButtonEvent(Button.B, ButtonEvent.Up, function () {
basic.showNumber(1)
})
input.onButtonEvent(Button.AB, input.buttonEventClick(), function () {
basic.showNumber(2)
})
Die Unregelmäßigkeit zwischen Click und den beiden neuen Event - Typen ist auffällig.
Ändere ich den Code nicht, kann ich wieder fehlerfrei in den Blockmodus umschalten.
Ändere ich den Code, muss neu compiliert werden, und es kommt zum oben genannten Fehler.
Wenn ich mir mal die neue input.ts ansehe, entdecke ich die Funktion buttonEventValue (die buttenEventClick ist übrigens block - hidden)
Wenn ich jetzt diesen Code im Editormodus einfüge, lässt er sich klaglos in den Blockmodus überführen. Damit entstehen dann oben dargestellte Blöcke.
input.onButtonEvent(Button.A, input.buttonEventValue(ButtonEvent.LongClick), function () {
basic.showNumber(0)
})
input.onButtonEvent(Button.B, input.buttonEventValue(ButtonEvent.Up), function () {
basic.showNumber(1)
})
input.onButtonEvent(Button.AB, input.buttonEventValue(ButtonEvent.Click), function () {
basic.showNumber(2)
})
Meine Vermutung ist, dass der Fehler bereits beim Generieren des Typescript - Codes passiert -
ich vermute die neue Funktion buttonEventValue(ButtonEvent.xxx) sollte besser in allen Fällen generiert werden.
Was meinen die Jörn und Juri dazu?
Gruß Raik