move_text()

move_text(<identificador del texto>, <x>, <y>)

Descripción:

Mueve un texto a otras coordenadas de pantalla. Se especifica como parámetro el identificador del texto que es un código numérico que devuelve las funciones write() y write_int() cuando se les pide que escriban un texto, y las coordenadas (x, y) de pantalla a las que se debe mover el texto.

El código de centrado especificado en el write() o write_int() se mantendrá cuando se utilice esta función.

Las coordenadas especificadas son siempre relativas a la pantalla y pueden estar dentro o fuera de la misma. Para modificar la coordenada z de los textos (el plano de profundidad en el que aparecen) se debe utilizar la variable global text_z.

Programa ejemplo:
PROGRAM ejemplo_move_text;

PRIVATE
    id_texto1;
    id_texto2;
    coord_x;
    coord_y;
    ángulo1;

BEGIN
    id_texto1=write(0, 160, 100, 4, "TEXTO EN MOVIMIENTO");
    id_texto2=write(0, 160, 100, 4, "MUEVA EL RATON");
    LOOP
        coord_x=160+get_distx(ángulo1, 100);
        coord_y=100+get_disty(ángulo1, 90);

        // Movemos los textos
        move_text(id_texto1, coord_x, coord_y);
        move_text(id_texto2, mouse.x, mouse.y);

        ángulo1+=1000;
        FRAME;
    END
END


En el ejemplo se imprimen dos texto con la función write() en el centro de la pantalla. Esta función nos devuelve los identificadores de dichos textos, que se guardan en las variables id_texto1 e id_texto2.

En cada paso de bucle, se mueve el primer el texto por una trayectoria circular que se consigue incrementando un ángulo (ángulo1) y utilizando las funciones get_distx() y get_disty(). El segundo texto se situará en las coordenadas del puntero del ratón.

Ambos textos se mueven en cada imagen mediante la función move_text().


Para borrar un texto definitivamente también se requiere el identificador del texto, y se debe utilizar para ello la función delete_text().


Ver: write() - write_int() - delete_text()