Accueil > Forum > > > > créer ou afficher un point (pixel) sur l'écran ou la feuille
créer ou afficher un point (pixel) sur l'écran ou la feuille
dimanche 22 janvier 2006 à 00:57:59 |
créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Bonjour. (sous vba) Quelqu'un pourrais me dire qu'elle le code qu'il faut écrire pour tout simplement : créer ou afficher un point (pixel) sur l'écran ou la feuille. Exemple: sub toto() worksheet.shape.point(420,250).color = 1 end sub En vous remerciant par avance , la recherche de cette solution n'a pas été concluante j'usqu'a maintenant. J5eme3110
|
|
dimanche 22 janvier 2006 à 19:18:02 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
salut, voici 8 points, mais en VB6..... Option Explicit Private Declare Function SetPixel Lib "gdi32" _ (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _ ByVal crColor As Long) As Long Private Sub Form_Load() Me.AutoRedraw = True Me.BackColor = vbWhite Call SetPixel(Me.hdc, 100, 100, vbBlue) Call SetPixel(Me.hdc, 100, 120, vbBlue) Call SetPixel(Me.hdc, 100, 140, vbBlue) Call SetPixel(Me.hdc, 100, 160, vbBlue) Call SetPixel(Me.hdc, 120, 100, vbRed) Call SetPixel(Me.hdc, 120, 120, vbRed) Call SetPixel(Me.hdc, 120, 140, vbRed) Call SetPixel(Me.hdc, 120, 160, vbRed) End Sub 
Coloration syntaxique automatique [AFCK]
çà devrait fonctionner... @+ PCPT [AFCK]
|
|
lundi 23 janvier 2006 à 00:08:50 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Merci beaucoup. Mais cela ne fonctionne pas
"ME" ne fonctionne pas!
VBA sous (Excel 2003) ne reconnait pas non plus la fonction "SetPixel".
La fonction n'est pas dans library! Est ce cela? Si oui, est il possible de télécharger une library?
|
|
lundi 23 janvier 2006 à 00:26:08 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
Me en VB6 correspond à la Form. essaie en remplaçant par le nom de ta UserForm (sans garantie) si çà fonctionne dans le princpe, mais que la UserForm ne contient pas de hDC, pose une PictureBox et met le code pour cette Pic. pour la librairie, gdi32 fait parti de Windows..... logiquement les API sont utilisables par les macros mais regarde les sources... peut-être y a t'il des spécificités de déclarations... ++
|
|
lundi 23 janvier 2006 à 00:55:02 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
merci
alors remplacement de "me" par UF1 (userform) ok AUTOREDRAW ne fonctionne pas avec vba alors remplacer par DRAWBUFFER exemple: uf1.drawbuffer = 170000 car uf1.drawbuffer = true ne fonctionne pas car apparement erreur d'execution '380' Impossible de définire la propriété de drawbuffer. Valeur de propriété non valide.Entrez une valeur entre 16000 et 1048576.
A quoi correspond autoredraw en vb ou pour mon cas drawbuffer en vba ?
Autrement en appelant la fonction "setpixel" fonction pas "erreur de compilation :argument non facultatif" Que faut il faire??
Je te remercie pour tes infos bien utile. Je ne suis toujours pas sortie de l'auberge.*
cordialement j5em3110
|
|
lundi 23 janvier 2006 à 01:01:55 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
autoredraw pour VB6 est un booléen. c'est pour que la fenêtre survolant la Form ne l'efface pas. (exemple, un msgbox qui supprimerait alors ces points) je ne connais pas VBA, mais une propriétés "DrawBuffer" ne m'inspirerait pas confiance pour ce cas.... argument non facultatif.... tu es certain de la syntaxe? cad la déclaration et les parenthèses? si pas de parenthèse, pas de Call bon courage...
|
|
lundi 23 janvier 2006 à 01:35:07 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Merci exact pas de call
Mais toujours un probleme (je me rapproche du but merci encore) ********************************** dans la ligne --> SetPixel(UF1.hdc, 100, 100, vbBlue) = 1 "Erreur de comp : Membre de méthode ou de données introuvable" et met en surbrillance la variable hdc pour me signaler que la est l'erreur *************************************** SetPixel(UF1, 100, 100, vbBlue) = 1 il me detecte encore une erreure de compilation mais je seche Je site : "Un appel de fonction dans la partie gauche de l'affectation doit renvoyer Variant ou Object" ************************************************** Quand je met hdc tout seul il rale et dit : erreure de compile ça je sais lol mais aussi "Variable non définit" **************************************************
Et au cas ou j'arriva à aller jusqu'a la fin de la parenthese pares le = il faut que je mette quoi au juste car j'ai mis 1 mais j'aurais pu mettre 2 car je croyais que je definisais n°d ecouleur.
Merci de bien vouloir essayer de m'aider
coordialement j5em3110
|
|
lundi 23 janvier 2006 à 01:46:43 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
la couleur est le 4 paramètre si tu veux récupérer une valeur, alors : MaValeurLong = setpixel(MonDeviceContext, MapositionX, MaPositionY, MaCouleurLong) cette valeur ( MaValeurLong) sera la valeur la plus proche possible de MaCouleurLong. mais une simple SetPixel MonDC, x, y, MaCouleurLong doit suffir.... (pas de parenthèse dans ce cas  ) as-tu essayé dans une picturebox? au cas où la propriété hDC n'existe pas..... toujours est-il que tu ne peux pas attribuer de valeur à une fonction, c'est l'inverse !!! donc pas de MaFonction = Mavaleur
|
|
lundi 23 janvier 2006 à 02:24:05 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

j5em3110
|
Alors j'ai trouver comment on ecrit le truc mais je ne sais pas quoi en faire pour crée un créer un point ou pixel sur l'ecran ou dans une shape.
j'ai écrit dans le module:
***************************************************** Option Explicit Private Declare Function SetPixel Lib "gdi32" _ (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _ ByVal crColor As Long) As Long Public MaValeurLong As Long ____________________________________________________________ Private Sub Form_Load() MaValeurLong = SetPixel(10, 5, 5, 4) end sub
_________________________________________________ Sub toto() Call Form_Load
End Sub *********************************************************
Je recupere dans la variable MaValeurLong = -1 je ne sais pourquoi Mais bon si cela peut m'aidé pour crée un point en coueur 4 je veux bien.
Merci de continuer si tu peux tu m'est d'une grande aide.
cordialement Jonathan 27 ans paris
|
|
lundi 23 janvier 2006 à 03:07:51 |
Re : créer ou afficher un point (pixel) sur l'écran ou la feuille

pcpt
|
tu récupères -1 parce que l'API te renvoie une erreur. le HDC (Handle Device Context) est l'objet sur lequel tu veux dessiner. donc ta Form ou une PICTURE que tu vas essayer (parce qu'on tourne en boucle là....) or toi, tu dis à l'API d'aller faire ses points dans "10" qui ne veux rien dire en soit... donc pose une PictureBox pour essayer, tu lui mets la propriété autoredraw à true (si çà existe en VBA) et tu essayes par exemple MaValeurLong = SetPixel(Picture1.hdc, 100, 100, 255) MaValeurLong devrait te renvoyer 255 et tu devrait avoir un point rouge... (code de 255)
|
|
Cette discussion est classée dans : créer, afficher, feuille, écran, pixel
Répondre à ce message
Sujets en rapport avec ce message
Afficher une feuille a l'écran [ par Rox74 ]
Bonjour a tous,Je suis débutant en vba et il me manque du language vba pour pouvoir résoudre mes problmes donc je fais appel à vos lumières.Voila mon
Capture de fenêtre minimisée [ par tdt63 ]
Bonjour,Je cherche à réaliser un programme permettant d'enregistrer comme image le contenu d'une fenêtre, et cela sans jamais l'afficher à l'écran. Qu
Afficher des infos a partir d'une feuille [ par YVO22 ]
Bonjour a tousJ'ai crée une feuille dans laquelle je range des informations sous forme de base de données et ceci a partir d'une userform.J'ai crée un
interface de recherche [ par ilhambousfiha ]
Bonjour tout le monde,J ai une application qui consiste à créer un interface de recherche pour l utilisateur, je m 'explique:Je posséde une feuille de
créer des classeurs excel en fonction des données d'une feuille. [ par sinxay ]
Boujour,Je débute avec un peu de mal, mais j'ai déjà trouvé comment rassembler plusieurs classeurs excel indentiques sur une seule feuille.Mais biensu
comment afficher une feuille excel [ par mythiac ]
bonjour,j'ai un petit problème, tout con pour vous je pense, mais qui est bien présent pour moi:je désire que s'affiche par ma macro un onglet de mon
création feuille via filtre - copie colle ligne dans nouvelle feuille suivant valeur d'une cellule d'une feuille référence [ par carom31 ]
Bonjour à tous, Ma situation est la suivante: j'ai une feuille de référence avec plusieurs colonnes du type: [b]Référence Authors Year Title Source
Problème pour la réalisation d'un macro VB sur excel [ par pierrecouture ]
Bonjour, dans le cadre de mon stage de fin d'étude je travaille sur la mise en place d'un process de gestion et j'aurais besoin de créer des macro en
Assistant Feuille de données [ par wtor ]
Je cherche un assistant pour créer des feuilles de données (Ajout, Modification, Suppression, Recherche), et es que je peut créer un assistant pour cr
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|