cs_MAsterC
Messages postés217Date d'inscriptionlundi 4 février 2002StatutMembreDernière intervention19 décembre 2012
-
7 janv. 2003 à 23:09
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 2010
-
5 sept. 2004 à 14:56
Bonjour!
Delphiprog avait déja répondu a cette question au niveau des changements de curseurs pour Delphi!
Regarder :
Tu sauvegardes le curseur dans un fichier de ressources (.res) autre que celui de l'application.
Ensuite, sous le mot clé implémentation, tu trouves, écrit par Delphi : {$R *.res}. Mets, à la suite, la directive : {$R MonCurseur.res}.
(MonCurseur étant le nom du fichier contenant ton curseur, bien entendu.
Ensuite, pour utiliser ton curseur dans l'application, utilises la méthode LoadCursor de l'objet Screen.
*********
Moi je ne comprend pas ce bout la :
Ensuite, pour utiliser ton curseur dans l'application, utilises la méthode LoadCursor de l'objet Screen.
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 7 janv. 2003 à 23:52
Ca m'étonne que j'ai écrit que LoadCursor était une méthode de l'objet Screen.
M'enfin, LoadCursor est une fonction de l'API User32 qui attend 2 paramètres et renvoie un HCursor:
Voilà en gros la trame pour utiliser un curseur personnalisé et sauvegarder dasn un fichier de ressources (*.res, réalisé avec l'éditeur d'images de Delphi tout simplement).
Voici les extraits d'une utilisation réelle :
Const
{Curseurs personnalisés}
crMyCursor=1;
crLoupe=2;
Implementation
{$R *.DFM}
{$R ABOUT}
{$R LOUPE}
Procedure TMainForm.FormCreate(Sender: TObject);
Begin
Screen.Cursors[crMyCursor]:=LoadCursor(Hinstance,'UL_INDEX');
Screen.Cursors[crLoupe]:=LoadCursor(Hinstance,'LOUPE1');
Puis à l'utilisation :
{Utilisation d'un curseur personnalisé sur une controle TLabel. Quand le curseur de la souris passe au dessus du label, il se transforme}
Comments.Cursor:=crMyCursor;
Autre exemple
procedure TDlgApercu.FormCreate(Sender: TObject);
begin
//Ici, le courseur a la forme d'une loupe (avec transparence !)
FormGenWin1.Cursor:=crLoupe;
end;
NB : le nom du curseur, passé en second argument, est sensible à la casse.
Est-ce plus clair, maintenant ?