cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 7 janv. 2006 à 17:50
Salut , Merci pour la remarque, je vai essayer de regler ce probleme,qui est le suisvant :
If Objet.Name <> Ambient.DisplayName Then Objet.Value = False
donc la il y a une confrontation de nom.
je vai regler sa dés que j'aurai le temps.
Encore merci.
m2rtech
Messages postés239Date d'inscriptionmercredi 9 octobre 2002StatutMembreDernière intervention20 février 2012 4 janv. 2006 à 15:08
salut,
j'ai remarqué que lorsque les Options Buttons étaient placés dans un frame et qu'ils étaient regroupés par index ex:
opt_toto(0)
opt_toto(1)
etc.
ceux-ci perdaient bizarrement leur aspect graphique
état selectionné (petit point vert dedant).
l'auteur confirme ou infirmer ce bug ?
Dans le cas ou ces dernier ne sont affublés d'un index, ça marche impec.
Si quelqu'un à une suggestion à apporter sur ce bug, et éventuellement une solution, je suis preneur car en effet ces controles n'ont pas le bug des options buttons standard (XPéisé par le fichier manifest) qui deviennent eux totalement noir (sauf dans un controle picturebox.
salutations
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 28 avril 2005 à 19:21
D'accord D'accord ;)
merchi pour vos réponses :D
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 28 avril 2005 à 16:01
enfin moi j'ai utilse la petite astuce ;) avec StyleXP. chuuut !
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 28 avril 2005 à 14:11
Tu peux très facilement trouver une dll gratuite pour appliquer les style xp : recherche sur google pour changer uxtheme.
Sinon, si ta question était comment faire pour récupèrer les images des thèmes, il te suffit d'utiliser quelques API, voir pour cela ma source portant sur l'ajout d'un bouton dans la barre de titre pour réduire dans le systray par exemple.
StyleXP n'est pas gratuit !
DarK Sidious
cs_Chewba
Messages postés90Date d'inscriptionjeudi 16 mai 2002StatutMembreDernière intervention10 septembre 2006 28 avril 2005 à 14:10
MadM@tt > c'est à moi que tu posais la question ?
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 28 avril 2005 à 14:04
Dis une question à 2 balles, tu utilise quoi pour avoir ces styles XP ?
Le logiciel StyleXP c'est ça ? (et au passage c'est gratuit ;) ?)
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 28 avril 2005 à 13:53
Chewba> imagines la taille de ton app avec a nombre important de picturebox.
mais ça reste une solution aussi. :)
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 27 avril 2005 à 20:50
Chewba >> Oui ça marche, et cest un petit bricolage très utile a mon gout pour les petites appli, mais dès qu'il s'agit d'un programme de plusieurs milliers de lignes et de plein d'objets, le petit bricolage peut devenir très long a mettre en place et surtout très peu pratique
cs_Chewba
Messages postés90Date d'inscriptionjeudi 16 mai 2002StatutMembreDernière intervention10 septembre 2006 26 avril 2005 à 20:18
Pour résoudre ce problème:
"le manifest a un grand defaut celui qui se produit si on met par exp un optionButton ds une frame ça devient noire."
tu mets tes contrôles par exemple un optionbutton dans une picturebox en mettant border à NONE et backcolor à la couleur de ta form et tu verras alors tes contrôles normalement.
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 10 janv. 2005 à 16:24
moustachu>moauis ton code sera tres util,je vai faire une mise a jour Apres l'examen
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 9 janv. 2005 à 19:56
OK vai y aller,Merci bien
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 janv. 2005 à 19:42
Va voir l'exemple qu'à posté MD sur ProgOtoP API Viewer pour un exemple simple d'utilisation de ce principe.
DarK Sidious
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 janv. 2005 à 19:40
Ca gèle l'application ? Est-ce que tu libères les événements souris au bon moment ? Il faut faire le releaseCapture lorsque la souris quitte ton contrôle car sinon, forcément, les événements souris seront redirigés vers ton contrôle et non vers l'application !
DarK Sidious
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 9 janv. 2005 à 19:31
Merci,
Avec setcapture et releasecapture ça gel toute l'application :(
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 7 janv. 2005 à 13:23
Je rentre un peu tard dans la conversation, désolé. MasterHack, tu as un exemple de MouseIn, MouveOut avec les méthodes préconisées par DarkSidious sur cette source : http://www.vbfrance.com/code.aspx?ID=28210)
Ca rendra ton controle plus souple qu"avec un timer.
++
Moustachu
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 6 janv. 2005 à 14:30
ça a l'aire plus propre,je vais le tester pour voir.Merci
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 5 janv. 2005 à 20:03
Le SetCapture ? Non beaucoup moins que le Timer vu qu'il ne s'agit que d'une redirection des événements souris vers la fenêtre voulu.
Donc si aucun message liés à la souris n'interviennent (si l'utilisateur ne bouge pas la souris), le programme ne prend aucune ressources !
DarK Sidious
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 5 janv. 2005 à 19:31
ah ouais j'ai capté =) merci de mavoir expliqué :D
au fait ça bouffe bcp en cpu ça ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 5 janv. 2005 à 18:07
Ben non justement : dès que l'événement MouseOver est déclenché, ca veut dire que la souris passe au dessus du contrôle => On capture ses événements avec SetCapture.
Ensuite, dès que la souris bouge (même si elle ne se trouve plus sur le contrôle), le MouseMove est déclenché, donc on teste si la souris se trouve toujours dessus ou pas, et si ce n'est pas le cas, on libère les événements souris avec ReleaseCapture. C'est aussi simple que cà.
mousehook ? Oui si on veux, sauf que là on redirige juste les événements vers une fenêtre, on ne les traite pas explicitement !
DarK Sidious
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 5 janv. 2005 à 17:54
mais ça nécessite quand meme l'utilisation d'un timer ça non ?
au fait c'est ça le ... mousehook c'est ça ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 5 janv. 2005 à 15:49
Tu capture les événements souris dans ton handle de usercontrol, et ensuite, dans le MouseMove, tu teste si ta souris se trouve toujours dessus ou non selon les coordonnées.
N'oublie pas de restaurer les événements souris dès que celle-ci n'est plus sur le contrôle !
DarK Sidious
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 5 janv. 2005 à 15:26
mais l'utilisee dans quel evenement.un evenement qui se repete le plus souvent !?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 5 janv. 2005 à 15:10
Utilise la fonction GetCapture pour capturer les événements souris dès que ta souris passe sur ton contrôle, ainsi, plus besoin de timer !
DarK Sidious
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 5 janv. 2005 à 15:00
ah pour les timers :
1:ils servent a detecter si le pointeur de la souris est sur le controls.c'est un evenement mouseOver et moseout au contraire de mousemove qui ne sert pas a grande chose.
2:pour verifer les valeur pour les option button car un seul optionbutton doit etre sur value true.
enfin ça,je sais que c'est une maniere pas trop economique mais je vais devoir trouver une autre soluce.
Merci
retaks666
Messages postés286Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention16 juillet 2007 4 janv. 2005 à 20:34
Je peux pas trop te dire, je l'ai pas trop essayé, mais en tous cas ça peut m'être utilé dans l'avenir ;) Sinon, pourquoi as tu besoin d'un timer?
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 4 janv. 2005 à 19:07
retaks666>Merci
plus de commentaire et de suggestion svp
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 4 janv. 2005 à 19:07
retaks666>Merci
plus de commentaire et de suggestion svp
retaks666
Messages postés286Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention16 juillet 2007 4 janv. 2005 à 18:58
Bien tout ça :)
Neo.balastik
Messages postés796Date d'inscriptionjeudi 17 mai 2001StatutMembreDernière intervention 5 mai 20097 3 janv. 2005 à 14:13
Ok pour le Manifest... Mais pour ceux qui sont en Win2000 cela ne sert à rien ! Ces contrôles sont donc les bienvenus même s'ils sont perfectibles.
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 3 janv. 2005 à 11:33
MrAssoL>le manifest a un grand defaut celui qui se produit si on met par exp un optionButton ds une frame ça devient noire.
Merci
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 3 janv. 2005 à 11:25
Merci
Stephane>oui c'est vrai mais je vais trouver un moyen de regle ça ds les prochaine mise a jour (apres les examen biensur),Merci
MrAssoL
Messages postés30Date d'inscriptionvendredi 17 mai 2002StatutMembreDernière intervention14 octobre 2009 3 janv. 2005 à 11:24
Ca a l'air pas mal mais un peu lourd, il existe une methode qui marche a 100% et avec tout les OS Windows et qui permet d'avoir ses applis a la sauce xp ou du theme choisi : cette methode c'est le fichier ".manifest" ... garantie 100% - de plus cela marche aussi avec les applis non VB c'est juste un fichier a ajouter dans le meme dossier que l'appli ....
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 3 janv. 2005 à 08:14
Vraiment très bien, bravo masterhack ;)
DarK Sidious
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 2 janv. 2005 à 20:55
Ah oui c'est donc ça !
excellent vraiment, juste ce petit détail qu'a énoncé Stephane
cs_Stephane
Messages postés550Date d'inscriptionvendredi 5 janvier 2001StatutMembreDernière intervention23 septembre 2006 2 janv. 2005 à 20:25
c'est bien mais y a un ENORME inconvenient, les timers dans les controls.
imagine si il te fau 10 check dans une form, tu a 10 timer qui tournent en permanence !
A eviter, utilise plutot usercontrol_paint pour dessiner
7 janv. 2006 à 17:50
If Objet.Name <> Ambient.DisplayName Then Objet.Value = False
donc la il y a une confrontation de nom.
je vai regler sa dés que j'aurai le temps.
Encore merci.
4 janv. 2006 à 15:08
j'ai remarqué que lorsque les Options Buttons étaient placés dans un frame et qu'ils étaient regroupés par index ex:
opt_toto(0)
opt_toto(1)
etc.
ceux-ci perdaient bizarrement leur aspect graphique
état selectionné (petit point vert dedant).
l'auteur confirme ou infirmer ce bug ?
Dans le cas ou ces dernier ne sont affublés d'un index, ça marche impec.
Si quelqu'un à une suggestion à apporter sur ce bug, et éventuellement une solution, je suis preneur car en effet ces controles n'ont pas le bug des options buttons standard (XPéisé par le fichier manifest) qui deviennent eux totalement noir (sauf dans un controle picturebox.
salutations
28 avril 2005 à 19:21
merchi pour vos réponses :D
28 avril 2005 à 16:01
28 avril 2005 à 14:11
Sinon, si ta question était comment faire pour récupèrer les images des thèmes, il te suffit d'utiliser quelques API, voir pour cela ma source portant sur l'ajout d'un bouton dans la barre de titre pour réduire dans le systray par exemple.
StyleXP n'est pas gratuit !
DarK Sidious
28 avril 2005 à 14:10
28 avril 2005 à 14:04
Le logiciel StyleXP c'est ça ? (et au passage c'est gratuit ;) ?)
28 avril 2005 à 13:53
mais ça reste une solution aussi. :)
27 avril 2005 à 20:50
26 avril 2005 à 20:18
"le manifest a un grand defaut celui qui se produit si on met par exp un optionButton ds une frame ça devient noire."
tu mets tes contrôles par exemple un optionbutton dans une picturebox en mettant border à NONE et backcolor à la couleur de ta form et tu verras alors tes contrôles normalement.
10 janv. 2005 à 16:24
9 janv. 2005 à 19:56
9 janv. 2005 à 19:42
DarK Sidious
9 janv. 2005 à 19:40
DarK Sidious
9 janv. 2005 à 19:31
Avec setcapture et releasecapture ça gel toute l'application :(
7 janv. 2005 à 13:23
Ca rendra ton controle plus souple qu"avec un timer.
++
Moustachu
6 janv. 2005 à 14:30
5 janv. 2005 à 20:03
Donc si aucun message liés à la souris n'interviennent (si l'utilisateur ne bouge pas la souris), le programme ne prend aucune ressources !
DarK Sidious
5 janv. 2005 à 19:31
au fait ça bouffe bcp en cpu ça ?
5 janv. 2005 à 18:07
Ensuite, dès que la souris bouge (même si elle ne se trouve plus sur le contrôle), le MouseMove est déclenché, donc on teste si la souris se trouve toujours dessus ou pas, et si ce n'est pas le cas, on libère les événements souris avec ReleaseCapture. C'est aussi simple que cà.
mousehook ? Oui si on veux, sauf que là on redirige juste les événements vers une fenêtre, on ne les traite pas explicitement !
DarK Sidious
5 janv. 2005 à 17:54
au fait c'est ça le ... mousehook c'est ça ?
5 janv. 2005 à 15:49
N'oublie pas de restaurer les événements souris dès que celle-ci n'est plus sur le contrôle !
DarK Sidious
5 janv. 2005 à 15:26
5 janv. 2005 à 15:10
DarK Sidious
5 janv. 2005 à 15:00
1:ils servent a detecter si le pointeur de la souris est sur le controls.c'est un evenement mouseOver et moseout au contraire de mousemove qui ne sert pas a grande chose.
2:pour verifer les valeur pour les option button car un seul optionbutton doit etre sur value true.
enfin ça,je sais que c'est une maniere pas trop economique mais je vais devoir trouver une autre soluce.
Merci
4 janv. 2005 à 20:34
4 janv. 2005 à 19:07
plus de commentaire et de suggestion svp
4 janv. 2005 à 19:07
plus de commentaire et de suggestion svp
4 janv. 2005 à 18:58
3 janv. 2005 à 14:13
3 janv. 2005 à 11:33
Merci
3 janv. 2005 à 11:25
Stephane>oui c'est vrai mais je vais trouver un moyen de regle ça ds les prochaine mise a jour (apres les examen biensur),Merci
3 janv. 2005 à 11:24
3 janv. 2005 à 08:14
DarK Sidious
2 janv. 2005 à 20:55
excellent vraiment, juste ce petit détail qu'a énoncé Stephane
2 janv. 2005 à 20:25
imagine si il te fau 10 check dans une form, tu a 10 timer qui tournent en permanence !
A eviter, utilise plutot usercontrol_paint pour dessiner
a+