Accueil > Forum > > > > capturer une couleur
capturer une couleur
dimanche 18 janvier 2004 à 23:21:03 |
capturer une couleur

Fly57
|
Alors voila, je me suis mis en tête de faire un petit logiciel qui m'indique le code RV et Hexa d'une couleur (ça j'ai deja fait) mais aussi qu'il puisse capturer cette couleur en n'importe quel point de l'ecran par exemple je clic sur mon bouton pour cette action, et la n'import ou ou je clic sur l'ecran, ça me renvoi la couleur rvb ou hexa du pixel cliqué sur l'ecran je sais pas trop vers quoi me tourner, c'est en C# biensur et j'utilise SharpDevelop ... ptêtre avec openGL mais j'ai pas reussi à le faire fonctionner sous SharpDevelop, j'ai telechargé CsGL, mais ça prends pas voila merci pour l'aide que vous pourrez me fournir :) - Fly -
|
|
lundi 19 janvier 2004 à 00:54:02 |
Re : capturer une couleur

coq
|
G peut etre une piste je dis bien piste pck je ne sais pas si C applicable La classe Bitmap contient une methode GetPixel : "Obtient la couleur du pixel spécifié dans ce Bitmap." Il "suffirait" de noter les coordonnées de la souris sur l'ecran tout en fesant une capture de tout l'ecran pour ensuite se servir de GetPixel afin de recup la couleur du pixel qui etait pointé en se servant de la capture. Cette source de gg00xiv te donne un Image Bitmap comporte un constructeur prenant comme parametre un Image à toi de jouer Cocoricoooooooo !!!!
|
|
lundi 19 janvier 2004 à 09:54:43 |
Re : capturer une couleur

Fly57
|
Merci pour ta reponse c'est nickel ce qu'il me fallait, bon ben j'ai presque finit le programe enfin il est fini mais le prob c'es tque je me sers de Direct X pour capturer les coordonnées de la souris, je les ais puis je me sers de GetPixel etc mais SharpDevelop ne reconnait pas Direct X
j'ai mis ça en haut du prog : using Microsoft.DirectX; using Microsoft.DirectX.DirectInput;
et SharpDevelop me sors cette erreur : "Le type ou le nom d'espace de noms 'DirectX' n'existe pas dans la classe ou l'espace de nom 'Microsoft'" il me la met deux fois :/
donc la question est la suivante, comment puis-je faire pour me servir de direct X sous Sharp Develop, et que ça compile bien sur :)
Car je n'ai pas VS .Net
Merci d'avance :)
- Fly -
|
|
lundi 19 janvier 2004 à 09:59:14 |
Re : capturer une couleur

coq
|
cherche plutot du coté des api il doit bien y avoir moyen de capturer ces fameuses coordonnées via l'api windows
Cocoricoooooooo !!!!
|
|
lundi 19 janvier 2004 à 10:39:06 |
Re : capturer une couleur

Fly57
|
j'ai etait fouillé sur msdn et j'ai trouvé la fonction GetCursorPos() j'ai donc fait comme suit :
public class CursorPointClass { [DllImport("coredll.dll")] public static extern bool GetCursorPos(ref Point pt); }
et je m'en sers ensuite comme ça :
Point pt = new Point(0, 0); //le lien que tu m'as indiqué Image capture = WindowsDesktop.CaptureScreen(); if(CursorPointClass.GetCursorPos(ref pt)) { //j'ai aussi essayé sans convertir en Int16 ou meme en Int32 Color cc = capture.GetPixel(pt.x.ToInt16(), pt.y.ToInt16()); }
et la j'ai un paquet d'erreurs (6) : -System.Drawing.Point.x est innaccessible en raison de son niveau de protection (CS0122) -System.Drawing.Point.y est innaccessible en raison de son niveau de protection (CS0122) -System.Drawing.Image ne contient pas de definition pour GetPixel (CS0117) les 3 autres sont à causes de celles qui precedent
voila, pourtant j'ai l'impression de bien m'en servir :/
- Fly -
|
|
lundi 19 janvier 2004 à 10:42:32 |
Re : capturer une couleur

coq
|
essaie un peu avec "out" a la place de "ref"
Cocoricoooooooo !!!!
|
|
lundi 19 janvier 2004 à 10:47:20 |
Re : capturer une couleur

Fly57
|
c'est idem :( les mêmes erreurs aux mêmes endroits
- Fly -
|
|
lundi 19 janvier 2004 à 10:57:18 |
Re : capturer une couleur

coq
|
bon G coder un truc vite fait (1 fenetre + un bouton ^^) deja coredll.dll je sais pas d'ou tu le sors dans la classe : [DllImport("user32.dll")] public static extern bool GetCursorPos(ref Point pt);
|
le code : private void button1_Click(object sender, System.EventArgs e) { Point pt = new Point(0, 0); GetCursorPos(ref pt); MessageBox.Show(pt.X.ToString()+"/"+pt.Y.ToString()); }
|
ça marche niquel Cocoricoooooooo !!!!
|
|
lundi 19 janvier 2004 à 11:21:10 |
Re : capturer une couleur

Fly57
|
ok maintenant c'est bon pour la souris :) merci pour ton aide ;) il ne me reste plus qu'un probleme à regler : -System.Drawing.Image ne contient pas de definition pour GetPixel (CS0117)
j'utilise un code que j'ai trouv ici pour faire la capture d'ecran que t'as montré au dessus, mon avis c'est que le code qui est donnée renvoie un Image (different d'un bitmap ?) alors que GetPixel() s'utilise sur un bitmap, c'est peut-être de là que viens l'erreur
je vais continuer à chercher :)
- Fly -
|
|
lundi 19 janvier 2004 à 11:26:18 |
Re : capturer une couleur

coq
|
par contre maintenant comme tu veux recup la couleur a n'importe quel point de l'ecran, il fo aussi que tu "intercepte" les clics en dehors de ta fenetre d'appli je pense que là y'a pas d'autre solution que le hook : Article sur CodeProjectArticle MSDNbon courage ^^ Cocoricoooooooo !!!!
|
|
Cette discussion est classée dans : clic, ecran, couleur, capturer, hexa
Répondre à ce message
Sujets en rapport avec ce message
Convertir couleur en hexa [ par lagoelle ]
Bonjour,Je suis sur un projet de création de skin pour SPV C600 et je dois créer un colorScheme.Comment convertir une couleur en valeur hexa (#FFFF p
couleur hexa [ par T103 ]
bonsoirvoila jarrive a recupeer la valeur d'un pixel avec la fonction getpixel, mai je recupere une valeur du stil en hexadecimal (#FF0066) mai ensuit
Menu en clic droit sur datagrid [ par miss07 ]
Bonjour, J'ai un petit probleme. Voila j'ai un datagrid et j'aimerai créer un espece de menu ou un vraiment un menu lorsque je fais un clic droit de m
Dimension de l'ecran [ par manou2005 ]
Bonjour tout le monde, je voudrais savoir comment faire pour avoir les dimensions de l'écran en C#.Et merci.
ListView et couleur selection items [ par YLSEAGLE ]
Bonjour à tous. Je cherche à changer la couleur de sélection d'un item dans une listview. Par défaut, celle ci est de couleur bleu avec le texte en bl
programmer le clic d'un bouton [ par FlowerOnTheWall ]
Bonjour.Je souhaiterai programmer le clic d'un bouton d'un programme qui n'est pas le mien. J'arrive juste à récupérer le handle de l'application.Merc
liste deroulante graphics [ par emmanuel9 ]
Bonjour, En faite je voudrais faire une liste avec un numero et un carré de couleur a coté mais une liste deroulante. Je peux pas utiliser de listv
Capturer des sons grace a un micro [ par mbourgeois ]
Bonjour,dans le cadre d'un projet d'études, je suis a la recherche d'un moyen de cpaturer les sons d'un microphone relié a un ordinateur dans l'un des
Sélection d'un ContextMenu [ par Marquo ]
Bonjour,je voudrais utiliser le clic droit sur un listview.Sur mon clic j'ai bien ajouter les menuItems : ListV.MenuItems.Add("toto") mais je ne sais
Couleur de menu [ par julie1m ]
Bonjour,J'ai un petit problème, mais je n'arrive pas à le résoudre:J'ai un Form, auxquel j'ai donné une couleur de fond.De plus, j'ai associé une barr
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|