Startseite › Foren › Deutsches LiveCode-Forum › Problem mit mobile Scroller › Antwort auf: Problem mit mobile Scroller
November 10, 2018 um 01:00 Uhr
#8479
Hm, Du hast einmal sScrollerID als Lokal und einmal als Global definiert, bitte entscheide Dich. 🙂
Globale/Lokale Variablen deklariert man am Besten ÜBER allen Handlern im Skript, so kann auch jeder Handler darauf zugreifen:
Stack2, card b1:
local sScrollerID, tScrollerRect, tContentRect
on preOpenCard
local sScrollerID
local tScrollerRect, tContentRect
// Only create a scroller on a mobile device
if environment() is not "mobile" then exit preOpenCard
put the rect of group "scrollArea" into tScrollerRect
put 0,0,(the formattedWidth of group "scrollArea"),(the formattedHeight of group "scrollArea") into tContentRect
// Create the scroller control
mobileControlCreate "scroller", "my_scroller1"
put the result into ssScrollerID
// Set the properties of the scroller
mobileControlSet "my_scroller1", "rect", tScrollerRect
mobileControlSet "my_scroller1", "contentRect", tContentRect
mobileControlSet "my_scroller1", "visible", true
mobileControlSet "my_scroller1", "scrollingEnabled", true
mobileControlSet "my_scroller1", "vIndicator", true
mobileControlSet "my_scroller1", "vscroll", 0
end preOpenCard
on closeCard
// Delete the scroller
## Ist aber LOKAL deklariert!
## global sScrollerID
if environment() is not "mobile" then exit closeCard
mobileControlDelete sScrollerID
end closeCard
Dito für: Stack3, card c1:
Und Dein Stack2 hat kein Skript zu Scrollererstellung.
Gruß
Klaus