PDA

Ver la Versión Completa : como cambiar la forma del puntero?


Patricio
05-07-2005, 13:46:58
Hola foro, tengo una aplicacion con Delphi 5 y Interbase, y cuando el programa esta realizando alguna operacion el mouse toma la forma de una flecha y la palabra sql abajo, esa forma del mouse se puede cambiar?

Saludos

yusnerqui
05-07-2005, 14:27:47
La forma de cambiar el puntero del mouse es a través de la propiedad cursor, y puedes utilizar el objeto Screen para hacer lo que quieres, luego:


//Al iniciar la operación
Screen.Cursor := crHourGlass;

//código de la operación

//y al finalizar
Screen.Cursor := crDefault;


Saludos.

dec
05-07-2005, 22:27:36
Hola,

Me intriga el sentido de hacer algo así:


var
temp: TCursor;
begin
temp := Screen.Cursor;
Screen.Cursor := crHourGlass;
try
{...}
finally
Screen.Cursor := temp;
end;
end;


¿Es por aquello de que el usuario puede estar utilizando un cursor que no sea el "crDefault" de Delphi y así lo guardemos y luego lo recuperemos para que el usuario no se quede con un palmo de narices? ¿Es acaso que el cursor representado por "crDefault" es, precisamente, el que el usuario esté usando en ese momento? ¿Porqué unas veces se ve escrito un código similar al de arriba y otras, sin embargo, se ve algo parecido a lo que escribió yusnerqui?

En fin, no es que sea una duda trascendental, de esas que dicen, pero, en todo caso, me llama la atención y quería dejarlo caer por aquí, como el que no quiere la cosa.

Lepe
06-07-2005, 11:13:33
Si no usas un try .. finally, cabe la posibilidad de que haya una excepción, y en ese caso el usuario se queda con el cursor crHourGlass; si el usuario es hábil, podrá seguir haciendo clics de ratón con ese cursor, pero lamentablemente, hay usuarios que se quedan esperando a que el cursor vuelva a su estado de crDefault, crHandPoint, etc... y ya pueden esperar sentados ;)

Se guarda el estado de Tcursor, porque a priori, no sabemos cual va a tener; recordemos que el programador es libre de poner un cursor diferente por cada control, e incluso para el mismo control, un cursor distinto según el momento.

Un saludo y espero, así como el que no quiere la cosa, te sirvan estas lienas ;).

dec
07-07-2005, 01:21:40
Hola,

Claro que sirven Lepe. Muchas gracias.