Command |
POSN |
|
|
Description |
Position Cursor X,Y or +X or +Y or X, Y,
Name/Page.
The cursor can be positioned on the display using absolute co-ordinates
or moved in
relation to it's current position by using +/- offset values.
The origin is located at the top left of the screen.
Re-position a previously placed entity by specifying the new
coo-ordinates and it's name.
This can be useful for indicator bars, simple movement animations and
moving text.
It may be necessary to place the cursor on another page to create a new
entity. |
|
|
Syntax/Parameters |
POSN(X,Y,Name/Page) |
|
|
Options |
Move multiple entities at the same time - v47.12
Multiple entities can be moved at the same time
POSN(x0,y0,Ent1,Ent2,Ent3,Ent4,...);
POSN(+10,+10,Img1,keyup,keydn); moves both image and keys 10 pixels in X and Y
direction
This is useful for slider bars where the bar image, key up and
key down objects move in sync.
Move with update=changed - v49.19
Movement of entities POSN(x,y,ent); when update=changed supported.
POSN in DRAW, IMG, TEXT and KEY Commands-vv49.37
* Added initial positioning to commands:
a) DRAW(name,width,style,x,y);
DRAW(name,width,height,style,x,y);
DRAW(name,width,height,start,arc,style,x,y);
b) IMG(name,src,style,x,y);
c) TEXT(name,text,style,x,y);
d) KEY(name,func,width,height,style,x,y);
KEY(name,downFunc,upFunc,width,height,style,x,y);
KEY(name,downFunc,upFunc,repFunc,width,height,style,x,y); |
|
|
Example |
POSN(+25,+0); moves the cursor 25
pixels to the right.
POSN(236,48); absolute position of x=236, y=48.
POSN(24,56,CalcPage); position cursor on calc page at x=24, y=56.
POSN(VarX,Vary); use variables with absolute values to control position of cursor
POSN(VarX,Vary,VertBar); use variables to move an entity - vertical bar
POSN(TOUCHX,TOUCHY,MyRectCursor); move a cursor to the contact point on
the screen.
Example
STYLE(stPage, PAGE) { back=black; update=changed; }
STYLE(stCircFg, DRAW) { type=Circle; col=white; }
STYLE(stCircBg, stCircFg) { col=black; }
VAR(x,0,S16);
VAR(y,0,S16);
PAGE(pgMain, stPage)
{
POSN(x,y);
DRAW(circBg, 60, 60, stCircBg);
DRAW(circFg, 60, 60, stCircFg);
LOOP(lpMain, FOREVER)
{
POSN(x,y,circBg);
LOAD(x,TOUCHX);
LOAD(y,TOUCHY);
POSN(x,y,circFg);;
}
}
SHOW(pgMain);
Note: It is advised not to move entities unless necessary as the rendering times are greatly increase
|
|
|
|