FORM AVEC BORDS IRREGULIERS A PARTIR D'UNE IMAGE

Setaou - 1 mai 2001 à 16:12
fabulofr Messages postés 116 Date d'inscription lundi 15 décembre 2003 Statut Membre Dernière intervention 8 novembre 2011 - 2 déc. 2006 à 22:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/975-form-avec-bords-irreguliers-a-partir-d-une-image

fabulofr Messages postés 116 Date d'inscription lundi 15 décembre 2003 Statut Membre Dernière intervention 8 novembre 2011 1
2 déc. 2006 à 22:08
Superbe, merci ^^
10/10 sans probleme ca marche impec' !!
jnbrunet Messages postés 258 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 13 novembre 2012
6 juil. 2006 à 07:01
Salut,
ca marche très bien! seulement, il découte seulement autour de mon image...et j'ai un rectangle au milieu de l'image donc j'aimerai rendre transparent....et pourtant il est de la meme couleur que les contours qui ont été découpé...pourquoi n'est-il pas découpé?

Merci
Jn
SkyRocKo Messages postés 174 Date d'inscription samedi 10 mai 2003 Statut Membre Dernière intervention 18 février 2006
18 mars 2005 à 22:35
Hello !

10/10, Vraiment excellent !!!

Que dire de plus, un truc pas mal serait de rajouter un paramètre optionnel : un seuil de tolérence en pourcentage pour les couleur, mais bon, c'est déjà super bien :)

Bonne continuation

++
AsselusBorealiss Messages postés 79 Date d'inscription dimanche 15 octobre 2000 Statut Membre Dernière intervention 24 septembre 2007
18 nov. 2004 à 23:08
Salut a tous
pour l'exemple ( vu la date du 1er post )

a la place de :

LineRegion = CreateRectRgn(StartLineX, Y, X, Y + 1)

remplacer par


LineRegion = CreateRectRgn(StartLineX + 1, Y, X, Y + 1)

et hop plus aucune trace ...reste que les lettres

a+
Assel

10/10 cool code
claudenduaya Messages postés 5 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 15 avril 2004
31 juil. 2004 à 17:21
vraiment cool;

10/10 et sur tout avec les image au format bmp
Prog1001 Messages postés 56 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 22 septembre 2009
15 juil. 2004 à 16:33
C'est tous ce que je recherchais
Merveilleux
fantastique code !!
10/10
Guygz Messages postés 4 Date d'inscription mardi 19 août 2003 Statut Membre Dernière intervention 3 janvier 2008
12 juin 2004 à 15:44
FAT !
Enormous !
Gigantesk !
cs_SkYsO Messages postés 1 Date d'inscription mardi 3 février 2004 Statut Membre Dernière intervention 3 février 2004
3 févr. 2004 à 14:31
Salut à tous

Ca marche vraiment pas mal tout ca :)

Par contre le temps de calcul est vraiment super long suivant l'image utilisée.
Quelqu'un aurait il une solution d'optimisation du code ?
Car bon je ne peux changer la taille de l'image

merci :)
dionysos6868 Messages postés 310 Date d'inscription jeudi 4 septembre 2003 Statut Membre Dernière intervention 9 juin 2005 1
11 janv. 2004 à 10:19
Super taff je vais tester ca.........

ca va donner une super loc a programme ca merci
Xav88 Messages postés 178 Date d'inscription mercredi 8 octobre 2003 Statut Membre Dernière intervention 25 septembre 2008
27 déc. 2003 à 18:45
C'est bon là ça marche à 100%. Bravo Bravo Bravo et 10/10!!!!!!!

Xav
Xav88 Messages postés 178 Date d'inscription mercredi 8 octobre 2003 Statut Membre Dernière intervention 25 septembre 2008
27 déc. 2003 à 18:22
Ca marche ou presque:
Après avoir testé la modification de Chris_Thal je n'ai plus de vagues mais des points qui correspondent aux points sur l'image mais quand je les supprime en mettant un fond bien blanc j'ai le même problème. Bouuuuouuu

Sinon ça à l'air bien

Xav
Xav88 Messages postés 178 Date d'inscription mercredi 8 octobre 2003 Statut Membre Dernière intervention 25 septembre 2008
27 déc. 2003 à 18:11
Ba chez moi ça marche pas. J'ai des vagues blanches autour de l'image (l'image du zip).
Je comprends pas, si quelqu'un peut m'aider......

Xav
ICIoBRa Messages postés 368 Date d'inscription dimanche 24 juin 2001 Statut Membre Dernière intervention 7 décembre 2015
4 juil. 2003 à 22:55
Bravo et merciàa Chris_Thal qui est le seul a avoir trouvé le grand bug de cette source !
jefftabasco Messages postés 8 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 22 juillet 2003
30 juin 2003 à 06:42
Par hasard qq c comment adapter ce code en .NET ?
cs_paline Messages postés 4 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 1 mars 2004
5 juin 2003 à 18:02
Vraiment excellent.
J'i remarqué que les lignes qui ne commencent pas par la couleur de transparence déconnent un peu mais c'est génial
10/10
Noiretulipe Messages postés 164 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 13 juillet 2008
18 mai 2003 à 18:50
g changé l'image et non, plus se coté pa bo ... Rien que du bonheur !!!
lol
Très bon prog !
Noiretulipe Messages postés 164 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 13 juillet 2008
18 mai 2003 à 18:48
C vrai que sur un fond noir c pas beau du tout !!!
beurk, beurk, beurk ....
sinon, rien d'autre à dire !
lenassim Messages postés 3 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 8 décembre 2003
12 mai 2003 à 10:37
C'est tres bien continu
bluelive Messages postés 17 Date d'inscription vendredi 27 décembre 2002 Statut Membre Dernière intervention 18 octobre 2003
28 avril 2003 à 22:40
Quelqu'un peut-il me dire s'il a trouvé le moyen de redimensionner après le picturebox par ex en affectant une zone précise du picturebox (disons coin inférieur droit) pour le redim..?
cs_Mémère Messages postés 222 Date d'inscription samedi 24 mars 2001 Statut Membre Dernière intervention 24 juin 2007
29 mars 2003 à 18:58
Marche grace au commentaire de Zog2002
cs_Mémère Messages postés 222 Date d'inscription samedi 24 mars 2001 Statut Membre Dernière intervention 24 juin 2007
29 mars 2003 à 18:55
Ne marche pas quand on change l'image chez moi, ça fait n'importe quoi, des zone qui disparaissent, d'autres qui devrait et qui ne le font pas.
cs_Berenger Messages postés 35 Date d'inscription dimanche 20 janvier 2002 Statut Membre Dernière intervention 19 juillet 2004
7 févr. 2003 à 22:00
Génial jusque là, j'utilisait un code d'une centaine de lignes pour faire la meme chose.
J'en de mande plus : Quelqu'un connait-il un système d'anti-crénelage pour le bord d'une fenêtre redessinée (Comme WinAmp 3) ?
C quand meme génial alors je te met 10/10 :)
Zog2002 Messages postés 20 Date d'inscription mercredi 22 novembre 2000 Statut Membre Dernière intervention 18 septembre 2007
14 déc. 2002 à 11:54
Il faut laisser une bordure de la couleur coulue transparente tout autour de l'image, autrement dit, le dessin ne doit pas toucher le bord du BMP et ça marche impec....
Bioacide Messages postés 58 Date d'inscription jeudi 5 septembre 2002 Statut Membre Dernière intervention 20 septembre 2004
12 sept. 2002 à 21:04
Sur un fond noir c'est laid
Nerdz Messages postés 56 Date d'inscription jeudi 27 juin 2002 Statut Membre Dernière intervention 27 janvier 2005
27 août 2002 à 20:54
Pk est-ce que sa coupe en plein milieu de mon image ?
Sinon c super
Bravo
cs_Moria Messages postés 31 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 12 septembre 2002
27 août 2002 à 11:05
Dans : Private Sub Form_Load()
Rajoute : Form1.ShowInTaskbar = True

Voila :)
Tilois Messages postés 721 Date d'inscription dimanche 10 juin 2001 Statut Membre Dernière intervention 27 mars 2011 7
4 août 2002 à 09:26
C'est trop bon ca comme source !!
Benj1105 Messages postés 103 Date d'inscription samedi 23 mars 2002 Statut Membre Dernière intervention 2 mars 2004
23 juil. 2002 à 10:12
Ca marche aps chez moi :( la découpe est très mal faite (ca me coupe la moitié de l image je sais pas pourquoi)
Chris_Thal Messages postés 1 Date d'inscription jeudi 19 juillet 2001 Statut Membre Dernière intervention 11 juillet 2002
11 juil. 2002 à 23:41
Je te remercie, ce code m'a beaucoup aidé, mais j'ai relevé une petite erreur dans le code:
il est écrit
If GetPixel(hDC, X, Y) TransparentColor Or X PicWidth Then
alors qu'il faudrait
If GetPixel(hDC, X, Y) TransparentColor Or X PicWidth - 1 Then

Effectivement, X n'atteint jamais X = PicWidth... Tu remarqueras que ça change le résultat dans ton exemple (apparition du damier blanc du fond de l'image).
cs_Tito Messages postés 4 Date d'inscription jeudi 11 avril 2002 Statut Membre Dernière intervention 12 avril 2002
12 avril 2002 à 00:07
pas mal, on peut améliorer l'effet en elargissant la plage de couleur qui va servir à la transparance (cela supprime les "taches") :
remplacer:
If GetPixel(hDC, X, Y) TransparentColor Or X PicWidth Then
par:
If (GetPixel(hDC, X, Y) < TransparentColor + lngFeather And GetPixel(hDC, X, Y) > TransparentColor - lngFeather) Or X = PicWidth Then

ou lngFeather est un LONG définissant la couleur de transparance (en général =RGB(255,255,255) pour faire disparaitre un fond blanc)
cs_lous Messages postés 1 Date d'inscription vendredi 4 janvier 2002 Statut Membre Dernière intervention 6 mars 2002
6 mars 2002 à 09:33
Il est super celui la rapide et il deconne pas avec certains pixel...
J'avais ca avec les autres les decoupes malfaites...
20/10 heeeu 10/10 =))
OzStriker59 Messages postés 10 Date d'inscription mercredi 20 février 2002 Statut Membre Dernière intervention 26 avril 2002
24 févr. 2002 à 13:53
J'ai fait un copier-coller dans VB 6 mais rien ne se passe ! Faut-il ajouter autre chose ?
cs_Ouneufe Messages postés 60 Date d'inscription mardi 4 septembre 2001 Statut Membre Dernière intervention 19 janvier 2009
14 janv. 2002 à 00:39
Ce code est très bon. Le seul souci c'est le temps qu'il faut à la machine pour calculer le skin à chaque démarrage (pixel par pixel). G remédié au problème( reste + qu'à faire un OCX).
cs_cyrilp Messages postés 140 Date d'inscription mercredi 4 octobre 2000 Statut Membre Dernière intervention 12 août 2009
11 janv. 2002 à 12:18
Euuuuuuh...
Je voulais noter le code (j'avais en + l'intention de mettre de 10) mais je trouve pas l'onglet "Donner une note"... Hey Nix, why ????

A++
cs_cyrilp Messages postés 140 Date d'inscription mercredi 4 octobre 2000 Statut Membre Dernière intervention 12 août 2009
11 janv. 2002 à 12:16
J'adore !

Maintenant, je m'en sers pour toutes les nouvelles app. que je fais, avec un look design !

Pour un code aussi court et pourtant aussi puissant, je met tout simplement 10/10 !

A++
maurice08 Messages postés 3 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 4 janvier 2002
4 janv. 2002 à 12:02
Ca être gengen si bien fonctione !
g parasite dans ce qui doit être transparent !!!
que fais je ???
franchement bien.
Techniquement trés bien.
ensuite l'utilité moins bien (en apparence)....
essai
Tout bonnement excellent, ce code va apporter de la légéreté et de la souplesse au applis customisées !
à l'aise
Zoli!!
Ke veux-tu ke je dise d'autre??? Je reste sur le cul!!! [8)]

Continue!!! Bone prog'!!!!!

Gogogogoooooooo!!!
voila, g trouvé:
en faite, sur certaines images, c kan la taille de la PictureBox est plus petite ou égale a la taille de sa Picture
G juste enlevé AutoSize=True

@+
fabs
g remarqué qu'avec certaines images, une partie de l'image ne se transformais pas ou au contraire , elle devenait transparente alors k'elle ne devrai pas !
je vais essayé de trouver pk
ou si kelk'un le sais ?
@+
fabs
sous win2000 on peut faire pareil avec SetLayeredWindowAtributes (chui pas sur de l'ortograf':)

cherchez sur le site de microsoft pour + d'infos
Rejoignez-nous