IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

afficher un Tcursor


Sujet :

Langage Delphi

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Points : 137
    Points
    137
    Par défaut afficher un Tcursor
    Bonjour,

    J'aimerai afficher dans le from1 plusieurs Tcursor (le crCross) en plus du cursor de la souris.

    Je pensais utiliser un Timage ou l'image serait le curseur en croix (crCross),
    cepandant j'arrive pas a affecter crCross à une Timage.
    Il semble que une Timage n'est pas prevu pour prendre en image un Tcursor.
    Pouvez vous me dire si c'est possible?

    Ci ce n'est pas possible avec une Timage y a t il un autre composant qui pourait me permettre de faire ca?

    Merci d'avance pour tout vos reponse.

    Dereck

  2. #2
    Membre éprouvé
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Points : 1 294
    Points
    1 294
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    image.picture.assign(Cursor)
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Points : 137
    Points
    137
    Par défaut comment fonctionne le mask d'une image
    sorry, it doesn't work.

    J'ai essayé comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Image2.picture.assign(crCross);
    end;
    J'ai eu en retour l'erreur suivante:
    Unit1.pas(171): Types incompatibles : 'TPersistent' et 'Integer'

    En faite mon but est de faire apparaître sur l'image1 (qui est un graph) des croix pour montrer des possitions bien defini.
    Je voulais faire ca en superposant l'image 2 audessus de l'image1 et affecté a l'image 2 le cursseur croix de la souris.

    Mais ca semble pas la bonne maniere ...

    Enfaite je pourais affecter une image en forme de crois a image 2 et avec mask rendre le fond transparant. J'ai vus ca sur le forum.
    Mais j'ai pas reussi a comprendre comment on utilise un mask pour rendre le fond d'une image transparante.
    comment on édite un mask? c'est une deuxième image faite sous paint?

  4. #4
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    Screen.Cursors[crCross] est l'objet image que tu cherches
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Points : 137
    Points
    137
    Par défaut
    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Image2:=Screen.Cursors[crCross];
    J'ai eu le droit à l'erreur:
    [Erreur] Unit1.pas(180): Types incompatibles : 'TImage' et 'HICON'


    Plus que je réfléchis plus que je me dis que ce n'est pas le bon moyen.
    En faite je veux afficher des croix au dessus de image1. Et je me dissait que l'image du curseur de la souris crCross pourait faire l'affaire, mais il ne semble pas être affectable a une Timage (image2).

    Je me dis donc que j'ai qu'à affecter à image 2 l'image d'une croix faite sous paint. (ca je sais faire)
    Le souci c'est que je veux afficher que la croix comme pour le curseur de la souris, je veux que le reste soit transparant.

    Sur le form j'ai cru comprendre que c'etait possible en utilisant un mask.
    Ma question est qu'est ce que c'est physiquement? comment est ce que je le crée?
    Quelqu'un peut il m'en dire un peut plus sur les images transparantes?

  6. #6
    Membre éclairé Avatar de peter27x
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 029
    Points : 757
    Points
    757
    Par défaut
    Citation Envoyé par Dereck07 Voir le message
    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Image2:=Screen.Cursors[crCross];
    J'ai eu le droit à l'erreur:
    [Erreur] Unit1.pas(180): Types incompatibles : 'TImage' et 'HICON'
    A tout hasard, essayes ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Image2:=TPicture(Screen.Cursors[crCross]);

  7. #7
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    Citation Envoyé par peter27x Voir le message
    A tout hasard, essayes ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Image2:=TPicture(Screen.Cursors[crCross]);
    le hasard n'a rien à faire la dedans

    au temps pour moi, Screen.Cursors[] est un tableau de HCursor, pas d'objets

    il faut donc le coller dans un Handle d'objet graphique...in TIcon me semble le plus adapté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     Image2.Picture.Icon.Handle := Screen.Cursors[crCross];
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Points : 137
    Points
    137
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Image2.Picture.Icon.Handle := Screen.Cursors[crCross];
    Ca marche niquel !

    En plus si le fond est noir la croix s'affiche en blanc, je ne pouvais pas rêver mieux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. afficher du texte
    Par Mau dans le forum OpenGL
    Réponses: 10
    Dernier message: 24/06/2003, 15h31
  2. Réponses: 6
    Dernier message: 10/09/2002, 03h35
  3. Copier et afficher une copie d'ecran
    Par Bobx dans le forum Langage
    Réponses: 6
    Dernier message: 02/08/2002, 22h20
  4. Afficher/Masquer un bouton comme IE 6
    Par benj63 dans le forum C++Builder
    Réponses: 3
    Dernier message: 29/07/2002, 13h12
  5. Réponses: 2
    Dernier message: 10/06/2002, 11h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo