![]() |
cambiar los cursores de mi aplicacion
Hola:
Tengo una aplicacion en la que me gustaría cambiar algunos de los cursores. En concreto quiero cambiar: crArrow, crDrag y crNoDrop. Es decir, por ejemplo siempre que arrastro un control quiero que el cursor sea por ejemplo 'curArrastrar.cur'. Espero puedan ayudarme. Gracias. |
hola
mira en trucomania, existe uno, creo que el 25 que es para poner tus propios cursores y poderlos usar dentro de la aplicacion. si no es esto lo que quieres dilo a ver si lo solucionamos |
Cita:
No había visto yo ese truco: He tenido q variar un poco el codigo del truco porque con self.cursor en on create (*), solo cambiaba el cursor en el formulario y no en todos los controles del mismo. {$R Cursor.res} const crflecha=-2; crarrastrar=-12; crnosoltar=-13; procedure TForm1.FormCreate(Sender: TObject); begin screen.cursors[crflecha]:=loadcursor(hInstance,'CRFLECHA'); Screen.Cursors[crarrastrar] := LoadCursor(hInstance, 'CRARRASTRAR'); screen.cursors[crnosoltar]:=Loadcursor(hInstance,'CRNOSOLTAR'); screen.Cursor:=crflecha; //(*)en lugar de self.cursor end; El problema ahora es q tengo una aplicación con varios formularios y quiero que todos tengan los mismos cursores. con el cursor crdrag que seria -12 y crnodrop -13 no tengo problema, si que una vez cambiado screen.cursors, me los coge bien. Pero el efecto no es el eperado, yo quiero q al abrir los siguientes formularios me aparezcan tambien con el cursor cargado en screen.cursor, y eso no lo hace, me toma el cursor normal de siempre. Tal vez alguien pueda decirme qué hago mal. yo tenia entendido que cambiando el cursor en screen.cursor cambiaba el cursor de la aplicacion, y no me parece que haga eso. Un saludo, y gracias por tu tiempo. |
Con este código
{$R Cursor.res} const crflecha=-2; crarrastrar=-12; crnosoltar=-13; .... procedure TForm1.FormCreate(Sender: TObject); begin screen.cursors[crflecha]:=loadcursor(hInstance,'CRFLECHA'); Screen.Cursors[crarrastrar] := LoadCursor(hInstance, 'CRARRASTRAR'); screen.cursors[crnosoltar]:=Loadcursor(hInstance,'CRNOSOLTAR'); screen.Cursor:=crflecha; //(*)en lugar de self.cursor end; El problema ahora es q tengo una aplicación con varios formularios y quiero que todos tengan los mismos cursores. con el cursor crdrag que seria -12 y crnodrop -13 no tengo problema, si que una vez cambiado screen.cursors, me los coge bien. Pero el efecto no es el eperado, yo quiero q al abrir los siguientes formularios me aparezcan tambien con el cursor cargado en screen.cursor, y eso no lo hace, me toma el cursor normal de siempre. Tal vez alguien pueda decirme qué hago mal. yo tenia entendido que cambiando el cursor en screen.cursor cambiaba el cursor de la aplicacion, y no me parece que haga eso. Un saludo, y gracias por su tiempo. |
La franja horaria es GMT +2. Ahora son las 20:53:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi