| Line 1: |
Line 1: |
| | + | The event '''on.timer''' is fired when a [[:Category:timer|timer]] is run (called periodically according to the period set in [[timer.start]]) |
| | + | |
| | + | It has no argument. |
| | + | |
| | + | == Example == |
| | + | |
| | + | Below is an example of a program that displays a message for 1 second when a key is pressed. |
| | + | <source lang="lua"> |
| | + | |
| | + | function on.paint(gc) |
| | + | if message then |
| | + | gc:setFont("sansserif", "r", 10) -- initialize font drawing |
| | + | gc:drawString(message, 0, 0, "top") -- display the message at (0, 0) coordinates |
| | + | message = nil -- erase the message |
| | + | timer.start(1) -- start a timer to exit on.paint() but keep in mind that we have to redraw the screen |
| | + | end |
| | + | end |
| | + | |
| | + | function on.timer() |
| | + | timer.stop() |
| | + | platform.window:invalidate() |
| | + | end |
| | + | |
| | + | function on.charIn(ch) |
| | + | message = "Hello World !" -- store a message |
| | + | platform.window:invalidate() -- force display |
| | + | end |
| | + | </source> |
| | + | |
| | + | Check out the [http://inspired-lua.org/index.php/2011/05/linking-events/ the full explanation of this example] in the tutorials part. |
| | | | |
| | | | |
| | [[Category:Events]] | | [[Category:Events]] |