Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Faire une fonction de paint [ Multimédia / Image & Vidéo ] (fdo)

vendredi 16 mars 2007 à 11:48:49 | Faire une fonction de paint

fdo

bonjours,
Jaimerais en cliquant sur un pixel faire le saut de peinture comme paint
sa de facon rapide sans passer pixel par pixel
Merci

vendredi 16 mars 2007 à 11:56:41 | Re : Faire une fonction de paint

jmfmarques

Membre Club
Deuxième discussion, avec un titre différent, pour le même sujet !!!
N'ouvre qu'une seule fois, s'il te plait.
1) en admettant que "saut" soit "seau" (sinon ce serait tout le contraire) :
tu as déjà eu ta réponse, non ?
C'est par utilisation de la Fonction ExtFloodFill de la librairie GDI32 de l'API de Windows que tu y parviendras .

vendredi 16 mars 2007 à 11:58:48 | Re : Faire une fonction de paint

NHenry

Membre Club
Bonjour

Doublon avec http://www.vbfrance.com/infomsg_DESSIN_904840.aspx ?

Il est plus facile de batiser quelqu'un que de le convertir.(surtout en programmation)
VB (6, .NET1&2), C++, C#.Net1
Mon site

vendredi 16 mars 2007 à 11:59:51 | Re : Faire une fonction de paint

Drikce06

Membre Club

Salut! Aller on prend les mêmes et on recommence! lol!

Declare Function ExtFloodFill Lib "gdi32" Alias "ExtFloodFill" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long, ByVal wFillType As Long) As Long

· hdc
Identifies a device context.

· nXStart
Specifies the logical x-coordinate of the point where filling is to begin.

· nYStart
Specifies the logical y-coordinate of the point where filling is to begin.

· crColor
Specifies the color of the boundary or of the area to be filled. The interpretation of crColor depends on the value of the fuFillType parameter.

· fuFillType
Specifies the type of fill operation to be performed. It must be one of the following values:
FLOODFILLBORDER
 The fill area is bounded by the color specified by the crColor parameter. This style is identical to the filling performed by the FloodFill function.
FLOODFILLSURFACE
 The fill area is defined by the color that is specified by crColor. Filling continues outward in all directions as long as the color is encountered. This style is useful for filling areas with multicolored boundaries.

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:


vendredi 16 mars 2007 à 12:05:55 | Re : Faire une fonction de paint

NHenry

Membre Club
Bonjour

Y a rien d'intégré au framwork : VB.NET et VB 2005 ?

Il est plus facile de batiser quelqu'un que de le convertir.(surtout en programmation)
VB (6, .NET1&2), C++, C#.Net1
Mon site

vendredi 16 mars 2007 à 13:03:53 | Re : Faire une fonction de paint

jmfmarques

Membre Club
Monjour NHenry,

Si tel était le cas, celà serait la démonstration absolue de la non nécessité de telles lourdeurs pour éviter si peu....
car vraiment, tout est tellement simple avec cette fonction de l'Api de Windows...

vendredi 16 mars 2007 à 13:09:35 | Re : Faire une fonction de paint

Drikce06

Membre Club
Réponse acceptée !

En réponce à ton MP, je t'avais laisser un exemple sue l'autre post mais il a été supprimé, le voici: (mais je n'ai rien d'autre à par celui-là)

Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long

Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long

Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long

Private Declare Function ExtFloodFill Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long, ByVal wFillType As Long) As Long

Const FLOODFILLBORDER = 0 ' Fill until crColor& color encountered.

Const FLOODFILLSURFACE = 1 ' Fill surface until crColor& color not encountered.

Const crNewColor = &HFFFF80

Dim mBrush As Long

Private Sub Form_Load()

'KPD-Team 1999

'URL: http://www.allapi.net/

'E-Mail: KPDTeam@Allapi.net

'Create a solid brush

mBrush = CreateSolidBrush(crNewColor)

'Select the brush into the PictureBox' device context

SelectObject Picture1.hdc, mBrush

'API uses pixels

Picture1.ScaleMode = vbPixels

End Sub

Private Sub Form_Unload(Cancel As Integer)

'Delete our new brush

DeleteObject mBrush

End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

'Floodfill...

ExtFloodFill Picture1.hdc, x, y, GetPixel(Picture1.hdc, x, y), FLOODFILLSURFACE

End Sub


vendredi 16 mars 2007 à 14:29:22 | Re : Faire une fonction de paint

jmfmarques

Membre Club
S'il le fallait vraiment, je déposerais une source/démonstration qui regroupe :
- l'effet "seau" (remplacement des pixels contigus de même couleur)
- le remplacement d'une même couleur par une autre sur l'ensemble (pixels contigus ou non)
- l'utilisation de la pipette pour le choix de la couleur à remplacer ou de celle de remplacement, pîpette assortie d'un petit outil "de confort" (la couleur est visualisée en même temps)
- utilisation de la "seringue" pour injecter une couleur (avec, comme pour la pipette, une visualisation des couleurs, tant à remplacer qu'à injecter)
- l'utilisation d'un menu de choix de couleurs (si l'on préfère celà à la pipette)
- et d'autres petits machins accessoires qui, au passage, répondraient à une question posée aujourd'hui par un autre forumeur, en ce qui concerne la personnalisation temporaire des curseurs.

Pour les VB.Netistes, il suffirait alors de transposer tout celà (écrit en VB, vers du VB.Net).

Je ne ferai toutefois pas ce dépôt (qui me parait bien peu utile) si on n'en exprime pas le voeu (je ne veux pas encombrer pour rien...)

vendredi 16 mars 2007 à 17:54:59 | Re : Faire une fonction de paint

jmfmarques

Membre Club
J'ai finalement procédé à ce dépôt, car cette source m'a été demandée par MP.
Que tous en profitent, alors... ce sera mieux ainsi.

lundi 26 mars 2007 à 06:08:22 | Re : Faire une fonction de paint

fdo

sa marche le seul probleme c'est qu'au bout d'une centaine l afonction ne veut plus marcher



Cette discussion est classé dans : fonction, pixel, paint


Répondre à ce message

Sujets en rapport avec ce message

Afficher Pixel en VB [ par Geff ] 'Lu 'vry coder!J'aimerais trouver une méthode pour afficher tres rapidement un point sur une pic vb, car la fonction pset est trop lente, l'api me sem Recherche une fonction : algo accomplissant meme fonction que le pot de peinture dans paint (fonction remplissage) [ par azerty25 ] Bijour allAlors voila, la question est dans le titre mais je vais donner plus de détails pour ceux qui voient pas trop, je voudrai une fonction qui co fonction flood remplissage pour logiciel paint [ par angedead ] Bonjour je souhaite mettre en ligne le code source d'un logiciel type paint en visual basic.NET (en vb6 ils ne manque pas ) Mais une fonction me manqu Fonction VBE Right() [ par juanquiX ] Salut,Etrangement, mon appli sous Excel/VBE ne reconnait pas la fonction Right( )...A quoi celà peut être du ? Il y a-t-il une reference specifique à fonction Format : Problème entre deux poste [ par PtitGrumo ] Bonjour je développe une appli en Access 2000! Elle marche super bien! mais quand je la met sur un autre poste il aime pas la fonction Format et ne la [.net] Planificateur de fonction [ par lebender33 ] Salut à tous, Alors voila je suis a la recherche d'une méthose en vb.net pour planifier une fonction de facon a ce qu'elle s'execute périodiquement.si Graphiques conditionnels [ par ChessMentor ] Bonjour voici mon problème. à la demande du patron de mon tuteur de stage, j'ai du réaliser plusieurs applications sous Excel. La dernière en date es Fonction cdate [ par jrbleboss ] Bonjours, Je voudrais savoir comment fonctionne la fonction cdate (pas son utilisation mais son fonctionnement) car j'aimerais trouver la fonction in Question pour ceux qui touchent en VBA/Office [ par ricomiracle ] Bonjour, Je fais un programme sur Excel et mon pbm porte maintenant sur la fonction (ou annuler) qui est commune à tout les outils Office. On la décl microsoft visual basic [ par ahmeddu57070 ] es-ce que quelqu'un sait comment se procurer gratuitement le logiciel complet (pas des mise à jour) microsoft visual basic, où un autre qui me permett


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.