Dégradé avec deux couleurs
BSR,
J'ai voulu reprendre la procédure 'dégradé' fournie en exemple dans windev 10 car je n'avais besoin que d'elle pour remplir un champ image.
Je récupère le DC avec ddebutdessin() mais rien ne ce passe

API Utilisé

API("msimg32", "GradientFill", nDC, &Vertex[1], 2, &iGrRect, 1, nSens)

avez vous une idée sur le pourquoi du comment.

Contribution le : 08/03/2006 22:40
Créer un fichier PDF de la contribution Imprimer


Re: Dégradé avec deux couleurs
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Bonjour,

Pour récupérer le DC d'un champ image il faut faire :

MonDC = SysrécupèreDC( Handle( Nom_du_champ_image ) )


Bon dév.,

Totof

Contribution le : 08/03/2006 23:17
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: Dégradé avec deux couleurs
merci, une petite chose que je connaissais et que j'avais oublié.
@+

Contribution le : 09/03/2006 09:05
Créer un fichier PDF de la contribution Imprimer


Au Secours ! Re: Dégradé avec deux couleurs
Bonjour WDForgiste (Femme) et WdForgiste (Homme)
Et Flute ...
J'ai tout essayé mais cela ne fonctionne pas

PROCEDURE dDégradé(nDC, x1, y1, x2, y2, nSens = 2, nCouleurDebut = iNoir, nCouleurFin = iBlanc, nTransparenceDebut = 128, nTransparenceFin = 128)
PROCEDURE dDégradé(nDC, x1, y1, x2, y2, nSens = 2, nCouleurDebut = iNoir, nCouleurFin = iBlanc, nTransparenceDebut = 128, nTransparenceFin = 128)
// J'ai d'abord essayé cette méthode mais Ndc =0
SI nDC=0 ALORS nDC=SysRécupèreDC(dDébutDessin("IMG_Lum")	)
//-------------------------------------------------------
//Puis celle Ci 
// Mais toujours rien dans mon champ image
dDébutDessin("IMG_Lum")
SI nDC=0 ALORS nDC=SysRécupèreDC(Handle("IMG_Lum")	)
//---------------------------------------------------
GRADIENT_RECT est une structure
	UpperLeft, LowerRight sont des entiers sans signe
FIN
TRIVERTEX est une structure
	X, Y sont des entiers	// Coordonnées de départ du dégradé
	Red, Green, Blue, Alpha sont des entiers sur 2 // Couleur et transparence
FIN

Vertex est un tableau de 2 TRIVERTEX
iGrRect est un GRADIENT_RECT

cdA, cfA sont des entiers sur 4
cdR, cdG, cdB sont des entiers sur 4
cfR, cfG, cfB sont des entiers sur 4

// Récupère les composantes de la couleur de départ
cdR = modulo(nCouleurDebut, 256)
cdG = modulo(nCouleurDebut/256, 256)
cdB = modulo(nCouleurDebut/256/256, 256)

// Récupère les composantes de la couleur d'arrivée
cfR = modulo(nCouleurFin, 256)
cfG = modulo(nCouleurFin/256, 256)
cfB = modulo(nCouleurFin/256/256, 256)		

// Transforme les entiers sur 2 en entiers sur 4
cdR = cdR + cdR * 0x00ff
cdG = cdG + cdG * 0x00ff
cdB = cdB + cdB * 0x00ff
cdA = nTransparenceDebut + nTransparenceDebut * 0x00ff

// Transforme les entiers sur 2 en entiers sur 4
cfR = cfR + cfR * 0x00ff
cfG = cfG + cfG * 0x00ff
cfB = cfB + cfB * 0x00ff
cfA = nTransparenceFin + nTransparenceFin * 0x00ff

// Vertex de départ
Vertex[1]:X = x1
Vertex[1]:Y = y1
Vertex[1]:Red 	= cdR
Vertex[1]:Green = cdG
Vertex[1]:Blue  = cdB
Vertex[1]:Alpha = cdA

// Vertex d'arrivée
Vertex[2]:X = x2
Vertex[2]:Y = y2
Vertex[2]:Red 	= cfR
Vertex[2]:Green = cfG
Vertex[2]:Blue  = cfB
Vertex[2]:Alpha = cfA

iGrRect:UpperLeft  = 0
iGrRect:LowerRight = 1

// Dessine le dégradé
API("msimg32", "GradientFill", nDC, &Vertex[1], 2, &iGrRect, 1, nSens)


Si mon modérateur préféré ou une autre personne compétente peux m'éclairer, je lui en serai éternellement reconnaissant

Contribution le : 09/03/2006 09:35
Créer un fichier PDF de la contribution Imprimer


Re: Au Secours ! Re: Dégradé avec deux couleurs
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Bonjour,

Après quelques tests :
- Il faut bien utiliser la fonction SysRecupèreDC
- Les coordonnées du point initial doivent être à 1,1 et non pas à 0,0 sinon cela ne fonctionne pas.

Bon dév.,

Totof

Contribution le : 09/03/2006 10:39
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: Au Secours ! Re: Dégradé avec deux couleurs
ouin.....

Toujours pas.
Ne doit on pas selectionner l'objet ???

Contribution le : 09/03/2006 10:55
Créer un fichier PDF de la contribution Imprimer


Re: Au Secours ! Re: Dégradé avec deux couleurs
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Re,

Excusez moi j'avais oublié au lieu de &Vertex[1] mettre &Vertex.

Vérifiez aussi les valeurs de vos couleurs.

Bon dév.,

Totof

Contribution le : 09/03/2006 11:09
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: Au Secours ! Re: Dégradé avec deux couleurs
Bon, pour le moment j'abandonne quant j'aurai les idées plus clair, je reprendrai.

Contribution le : 09/03/2006 11:48
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2