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 !

STYLE XP SANS MANIFEST, EN PURE .NET. MAJ-2


Information sur la source

Catégorie :VB.NET Source .NET ( DotNet ) Niveau : Débutant Date de création : 13/11/2003 Date de mise à jour : 18/05/2005 11:13:39 Vu : 9 179

Note :
10 / 10 - par 8 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (37)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Fonctions pour activer le style XP (avec icons) équivalent à un manifest mais en pure .net.

COMPATIBILITE :
Framework 1.1, VS 2003, Windows XP
(pour VS2002, voir les commentaires de nseveno)
Inutile à partir du Framework 2.0

Pour les contrôles qui ont une propriété FlatStyle (comme les boutons), il faut affecter la valeur System à celle-ci.
Ex : Button1.FlatStyle = FlatStyle.System
 

Source

  • ' A placer au début de la région " Code généré par le Concepteur Windows Form "
  • ' au dessus de Public Sub New()
  • Public Shared Sub Main()
  • Application.EnableVisualStyles()
  • Application.DoEvents()
  • Application.Run(New frmApp) 'remplacez frmApp par le nom de votre form.
  • End Sub
' A placer au début de la région " Code généré par le Concepteur Windows Form "
' au dessus de Public Sub New()

Public Shared Sub Main()
    Application.EnableVisualStyles()
    Application.DoEvents()
    Application.Run(New frmApp)  'remplacez frmApp par le nom de votre form.
End Sub

Conclusion

Si ça ne marche pas chez vous, lisez attentivement les commentaires qui pourront peut être vous aidez.
 

Historique

18 mai 2005 11:13:39 :
MAJ-2 18/05/2004 Ajout d'une capture d'écran Changement de la description pour être plus clair pour les nouveaux venus ;) MAJ-1 13/02/2004 Règle le problème des icons qui n'apparaissaient pas dans certain contrôle (alors qu'avec un manifest ça fonctionnait) *** Ancienne description *** COMPATIBILITE : Framework 1.1, VS 2003 (pour VS2002, voir les commentaires de nseveno) >MAJ : Ensemble de fonctions pour activer le style XP et régler un bug (icons) de la fonction initiale et pour égaler un manifest. On peut donc enfin s'en passer réellement ! (Trouvées à travers d'autres sites.) > Ancien : Fonction .net qui permet d'activer le style XP (Trouvée par moi dans la doc.)

Commentaires et avis

signaler à un administrateur
Commentaire de Cameleon69 le 13/11/2003 13:11:28

Oui mais c'est uniquement valable que pour .NET donc !!!

signaler à un administrateur
Commentaire de nseveno le 13/11/2003 17:40:18

Excellent ça ! Merci merci merci !!!

signaler à un administrateur
Commentaire de spy166 le 14/11/2003 01:17:04

Oua c'est net !!
Ca déchire merci merci merci !!

signaler à un administrateur
Commentaire de monstros2003 le 14/11/2003 10:05:50

>Cameleon69
Oui j'ai vu que je n'avais pas cocher .net, dsl...

>Les autres
De rien !

signaler à un administrateur
Commentaire de Dromax le 14/11/2003 18:50:24

Franchement super !!!

Je suis donc vener de mettre pris la tete a comprendre a utiliser et increment un .manifest.

Merci kan meme spy...lol

signaler à un administrateur
Commentaire de spy166 le 14/11/2003 20:12:23

Et moi aussi je suis vénère...
lol

signaler à un administrateur
Commentaire de SupraDolph le 17/11/2003 18:24:20

Tous simplement exélent !
Trés belle découverte qui ravira plus d'une personne

Amicalement
SupraDolph.

signaler à un administrateur
Commentaire de monstros2003 le 18/11/2003 10:35:16

Salut a tous, je viens de rencontrer un bug sur cette fonction, il semblerais que les icons qui soit associé à des listview n'apparaissent pas ; et le phénomène est identique sur des icons de toolbar ???
Si je met un manifest, la ca marche... Quelqu'un a t-il eu le meme problème ? et trouvé une éventuelle solution ?

Sinon au fait dans la doc, il est mentionné que cette fonction à été implanté depuis le version 1.1 du framework.

signaler à un administrateur
Commentaire de ronanry le 20/11/2003 18:28:06

AAAAAh comprends mieux pk moi ca marche pas .....
J'ai que la version 1.0 du FRAMEWORK BOOUOUUUUUUHHHH

SNIIIFFFF :(
et avec mon 56Ko je vais pas m'amuser a le chercher :)
je demanderai a un pote lol

signaler à un administrateur
Commentaire de mage le 23/11/2003 16:52:28

bonjour

je met mon code ici :
'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
        Application.EnableVisualStyles()
et voila le message :
'EnableVisualStyles' n'est pas un membre de 'System.Windows.Forms.Application'.
je suis en 2003 server et j'ai framework 1.1

Pourriez vous m'aider merci

signaler à un administrateur
Commentaire de monstros2003 le 24/11/2003 10:56:41

Je sait pas si ça peut venir de la, et si ça marche, mais si tu as VS2002, il ne connait peut être pas la fonction, mais si tu forces la compilation ou l'éxécution ça fait quoi ? sinon faudrait trouver un compilateur alternatif... maintenant si tu as VS2003, je sait pas alors, DSL.

signaler à un administrateur
Commentaire de nseveno le 24/11/2003 20:06:31

mage, tu as visual studio 2002 avec ton framework 1.1 ?

si oui, regarde dans tes références si ta bibliothèque system.windows.forms.dll est bien dans la version 1.1.33xx, et si c'est la version 1.0, vire la et recrée ta référence vers la version 1.1...

signaler à un administrateur
Commentaire de monstros2003 le 25/11/2003 10:22:19

------- Mise A Jour -------
de la description
du code

signaler à un administrateur
Commentaire de javamanxp le 17/12/2003 11:50:23

Même PB que monstros2003 avec les listview et EnableVisualStyles.
Les Icônes disparaissent.
quelqu'un à un solution ?????

signaler à un administrateur
Commentaire de spy166 le 17/12/2003 12:45:26

A quoi sert le <System.STAThread()> ??
Ca marche sans c'est pour ça

signaler à un administrateur
Commentaire de monstros2003 le 24/12/2003 12:27:26

javamanxp> Le problème des icons est réglé depuis la mise à jour que j'ai faite. N'utilise pas que EnableVisualStyles, mais le nouveau code complet :
Public Shared Sub Main()
    Application.EnableVisualStyles()
    Application.DoEvents()
    Application.Run(New frmApp) 'remplacez frmApp par le nom de votre form.
End Sub

spy166> Oui c'est vrai on peut s'en passer. Et d'ailleurs autant s'en passer, c plus legé ! En faite c'est une déclaration qui est implicitement faite par VB.Net comme pas mal de truc cf System.Windows.Forms.Application.enablevisualstyles = enablevisualstyles

signaler à un administrateur
Commentaire de valbibi le 19/02/2004 20:01:15

Attention, cette méthode marche mais elle peut provoquer des exceptions (SEHException) lors de l'affichage de boite de dialogues modales dans un programme. J'ai eu le problème et j'ai eu un mal fou à en déterminer la provenance.

signaler à un administrateur
Commentaire de li9 le 08/03/2004 13:37:49

j'ai visual studio 2002 .NET (arch.),
j'ai téléchargé et installé le framework 1.1 sdk
mais quand je recreer la reference en incluant
le nouveau system.window.form.dll
je ne peux pas aller en mode design , je peux plus compiler et
j'arrive même pas à acceder a la moindre option du framework 1.1

est ce que quelqu'un pourrait m'aider a comprendre comment s'en servir correctement ?
merci

signaler à un administrateur
Commentaire de FlashYop le 24/04/2004 00:02:08

Magnifique !

10/10

signaler à un administrateur
Commentaire de FlashYop le 24/04/2004 00:20:24

Magnifique !

10/10

signaler à un administrateur
Commentaire de monstros2003 le 08/07/2004 00:13:10

Salut à tous,
Pour ceux qui ont des problèmes avec les TabPages et le style XP, aller voir la fiche de spy166 <a href="http://www.vbfrance.com/code.aspx?ID=23778">ici</a>

signaler à un administrateur
Commentaire de niluje le 21/07/2004 17:16:41

ca fonctionne sous Windows 200 l'XP Style ? ou uniquement sous windows XP ?

signaler à un administrateur
Commentaire de Dromax le 13/10/2004 11:23:40

Vraiment bravo !!

Et en plu avec la mise a jour g plus de pb avec les toolbar !

signaler à un administrateur
Commentaire de MalcolMZ le 28/12/2004 19:51:21

Comme mage un peu plus au dessus, j'ai le meme problème, il ne reconnait pas    Application.EnableVisualStyles()



je met mon code ici :
'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
        Application.EnableVisualStyles()
et voila le message :
'EnableVisualStyles' n'est pas un membre de 'System.Windows.Forms.Application'.
je suis en 2003 et j'ai framework 2.0

Pourriez vous m'aider merci

signaler à un administrateur
Commentaire de jkoessler le 25/03/2005 15:30:09

Bonjour a tous ,

J'ai visual basic 2003 .NET avec le framework 1.1.4322 SP1 et ca ne marche pas
Voici le debut de ma source :
Public Class Form1
    Inherits System.Windows.Forms.Form

    Public Shared Sub Main()
        Application.EnableVisualStyles()
        Application.DoEvents()
        Application.Run(New Form1) 'remplacez frmApp par le nom de votre form.
    End Sub

#Region " Code généré par le Concepteur Windows Form "

    Public Sub New()
        MyBase.New()

        'Cet appel est requis par le Concepteur Windows Form.
        InitializeComponent()
        Application.EnableVisualStyles()
        'Ajoutez une initialisation quelconque après l'appel InitializeComponent()

    End Sub

Est ce que quelqun a le meme probleme que moi ?

Merci

signaler à un administrateur
Commentaire de monstros2003 le 27/03/2005 18:59:52

Salut jkoessler,

Tu n'es pas obligé de mettre "Application.EnableVisualStyles()" dans la 2eme partie :

    Public Shared Sub Main()
        Application.EnableVisualStyles()
        Application.DoEvents()
        Application.Run(New Form1)
    End Sub

    Public Sub New()
        MyBase.New()
        'Cet appel est requis par le Concepteur Windows Form.
        InitializeComponent()
        'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
    End Sub

A par ça, pour ton pb, as-tu affecté aux controles qui ont une propriété FlatStyle la valeur System ? (comme indiqué vite fait dans l'explication finale)

signaler à un administrateur
Commentaire de jkoessler le 27/03/2005 20:15:43

Ah effectivement maintenant ça marche. Merci beaucoup monstros2003

signaler à un administrateur
Commentaire de cedrigoler le 14/05/2005 18:30:24

A propos des boutons :
N'oubliez pas de mettre leur propriété "FlatStyle" sur "System" pour ça fonctionne aussi sur eux.

signaler à un administrateur
Commentaire de monstros2003 le 18/05/2005 11:17:49

------- Mise A Jour -------
de la description
ajout capture

signaler à un administrateur
Commentaire de xps le 21/05/2005 10:21:57

simple,rapide,efficace, c'est super!. 10/10

signaler à un administrateur
Commentaire de OneHacker le 05/08/2005 14:04:56

A quoi sert la commande Application.DoEvents() ?!

signaler à un administrateur
Commentaire de crigs27 le 08/08/2005 11:28:57

Dite comment on fait quand on a plusieur fenètre ???
dans mon cas il n'y a que la première qui a le style XP
merci

signaler à un administrateur
Commentaire de andlah le 14/11/2005 19:28:42


Cette méthode fonctionne tres bien effectivement, mais comme disais VALBIBI, ca cause des erreurs, j'utilise un composant qui utilises les fonctionnalités GDI+ et j'ai eu des erreurs a cause de cette méthode et c'est très dur trouver la source du problème, donc si vous avez des erreurs bizzares que vous n'avez jamais rencontrées avant, essayer de mettre en commentaires ces lignes de codes!!!!! :):):) mais ca donne un beau look.

signaler à un administrateur
Commentaire de milo2009 le 30/11/2005 22:17:39

Quelqu'un sait si on peut mettre une image sur un bouton system avec le style xp, car la propriété image ne fonctionne pas

signaler à un administrateur
Commentaire de EvilGost le 31/10/2006 10:43:08

impec, 10/10...c tout con, mais ça marche :)

signaler à un administrateur
Commentaire de EvilGost le 31/10/2006 17:16:43

dommage que le application.run(new form) génère une exception après la fermeture d'une fenetre modal...c moyen...
La solution, placez plutot ca dans votre code, sans y placer le code de Monstros (dans la forme principale, entre MyBase.New et InitializeComponent, ca fonctionne parfaitement):

#Region " Code généré par le Concepteur Windows Form "

    Public Sub New()
        MyBase.New()
        Application.EnableVisualStyles()
        Application.DoEvents()
        'Cet appel est requis par le Concepteur Windows Form.
        InitializeComponent()

        'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
    End Sub

[...]

signaler à un administrateur
Commentaire de monstros2003 le 31/10/2006 23:41:20

EvilGost, effectivement ca marche, c'est ce que j'avais proposé au début mais la tu perds les icones éventuels dans les tabpages, les toolbars et je sais plus quoi d'autre. Enfin si t'en a pas besoin c'est tout bon ;)

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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,265 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é.