STYLE XP - FLATSTYLE = SYSTEM SUR TOUS LES CONTROLS DE LA FORM

TheEwook Messages postés 155 Date d'inscription samedi 3 juillet 2004 Statut Membre Dernière intervention 30 mai 2005 - 21 août 2004 à 00:38
jmenfous Messages postés 117 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 2 juillet 2009 - 10 mai 2007 à 16:53
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/25537-style-xp-flatstyle-system-sur-tous-les-controls-de-la-form

jmenfous Messages postés 117 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 2 juillet 2009 1
10 mai 2007 à 16:53
lol :)

va voir la source http://www.vbfrance.com/code.aspx?ID=27121
je penses justement répondre à ta même question :)
mdabin Messages postés 4 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 27 avril 2007
10 mai 2007 à 16:20
Comment faire si on veut modifier les memes proprietes d'un groupe d'objets et non de tous les objets? (C'est à dire sans modifier un par un les propriété de chaque objet ) Peut on indicer les objets comme cela etait possible sous VB6?(Visiblement non; Exemple: Label(i).visible=False )
Merci
jmenfous Messages postés 117 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 2 juillet 2009 1
1 nov. 2004 à 17:05
La liberation de la memoire dans le code c'est preferable, le garbage collector autrement dit ramasse miette... il a tendence a ne rammacer que des miettes... lol

Vu que l'on ne trouve pas grand chose sur ce garbage collector, j'ai fais des tests de boucles sur des objets (ecriture, lecture de fichiers XML) avec et sans liberation de la memoire dans le code.
Sur le serveur de test, un Bi-Xeon 2,6 Ghz avec 2Go de RAM ECC. J'ai constate que la memoire n'etait liberee qu'en fin de code. Le temps d'execution n'etait pas tellement plus faible avec liberation memoire. Par contre le meme test avec des threads m'a prouve que le code etait plus fiable avec liberation memoire (dans le cas contraire des fichiers n'etaient pas bien fermes alors que j'utilisais des mutex pour la secrurisation des donnees communes aux differents threads).

Pour conclure, je trouve la liberation a la main plus efficace, plus rapide et surtout tellement plus propre. ;-)

Si qq a fait d'autre tests, je suis preneur de ses conclusions.

PS : pensez a mettre une methode Dispose dans vos classes? Aidons nos petite barettes de memoire. Faitent comme moi utilisez la liberation de la memoire, car elles le valent bien.

Pour le mouvement de liberation de la memoire, donnez vos dons a :
liberation_de_la_memoire@parcequelelevauxbien.com

;-)
CybFabDMI Messages postés 1 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 31 octobre 2004
31 oct. 2004 à 14:52
Bonjour TheEwook,

Tout d'abord merci pour cette transmission de savoir.

Je débarque dans le milieu de la programmation, Vb.Net étant mon premier langage.

J'ai trouvé ton code très intéressant, clair et surtout pour moi très instructif.
J'aimerais te poser une question non pas sur le code lui même mais plus sur ta manière de coder afin de mieux comprendre .Net.

Pourquoi fais-tu une libération implicite de la mémoire au lieu de laisser le CLR du FrameWork.Net s'en charger (grâce à fonction de Garbage Collector)?

Merci d'avance pour ta réponse.
cs_yoda Messages postés 19 Date d'inscription mardi 29 janvier 2002 Statut Membre Dernière intervention 21 juillet 2005
27 oct. 2004 à 16:08
Je voulais juste dire que j'ai effectivement une source identique. Mais je vais être constructif et d'ici quelques jours je vais mettre en ligne une source qui en plus permet de savoir si WindowsXP se trouve en style classique ou bien en style XP. Parce que si on utilise cette source directement on ne peut jamais modifier la couleur des boutons (FlatStyle = System inhibe la propriété BackColor des boutons) même si Windows XP est en style classique.
jmenfous Messages postés 117 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 2 juillet 2009 1
16 sept. 2004 à 12:42
Hello TheEwook

J'ai trouve ce que je cherchais avec la methode
C.GetType.Equals(System.Windows.Forms.Button)
...pour eviter les ToString

Mais j'ai aussi trouve encore plus simple pour appliquer le FlatStyle sur absoluement tt les controls

-----------------------------------------------------------------------

Public Sub Appliquer_Style_XP(ByVal vCtrl As Control)
Dim C As Object
'recherche de tout les controls
On Error Resume Next 'pour tt les controls sans FlatStyle
For Each C In vCtrl.Controls
C.FlatStyle = FlatStyle.System
If C.Controls.Count > 0 Then Appliquer_Style_XP(C) ' et c'est reparti pour chercher les autres controls qui sont contenus dans C
'Liberation memeoire
C = Nothing
Next
End Sub
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
21 août 2004 à 08:37
salut,
deja merci pour ton aide pour les photos, ta source est sympa.
ludovicanceaux Messages postés 440 Date d'inscription mardi 21 octobre 2003 Statut Membre Dernière intervention 6 mai 2010
21 août 2004 à 01:56
cool ta source 8/10
TheEwook Messages postés 155 Date d'inscription samedi 3 juillet 2004 Statut Membre Dernière intervention 30 mai 2005
21 août 2004 à 00:38
Si vous mettez une note, mettez au moins un commentaire pour dire ce qui va et ce qui va pas.

merci d'avance
Rejoignez-nous