IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Appli win32 avec controls style windows vista


Sujet :

Visual C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre exp�riment� Avatar de benito9253
    Homme Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 205
    Par d�faut Appli win32 avec controls style windows vista
    Bonjour tout le monde,

    Je fais actuellement une application win32 avec Visual Studio 2008, sur Windows Seven.

    Lorsque je d�veloppe l'interface graphique avec visual studio, mes controls ont bien le style aero. Mais quand je lance mon appli (que ce soit en mode d�bug ou release), j'ai des controls style windows 2000. Pareille si je cr� mes controls dynamiquement...

    Comment faire pour avoir une interface avec des controles aero ? J'ai fais pas mal de recherche et j'ai vu sur MSDN que c'�tait possible avec VS 2008, sans qu'il y ai indiqu� la marche � suivre...

    Est ce que quelqu'un pourrait m'expliquer comment faire ?

    Merci d'avance

    Beno�t

  2. #2
    Membre exp�riment� Avatar de benito9253
    Homme Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 205
    Par d�faut
    Je ne sais pas si j'ai �t� tr�s clair, donc je r�explique...

    Voici le style de fen�tre que j'obtient dans Visual Studio, et que je voudrais avoir � l'execution:




    Mais lors de l'execution voici ce que j'obtient:




    D�ja est ce que cela est possible ?
    Si oui, y a t-il une dll � importer ? Une option � modifier dans Visual Studio ?

    Toute piste ou suggestion est la bienvenue, car pour l'instant je rame compl�tement...

    Merci d'avance.

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Un pragma � rajouter dans ton application pour ajouter la d�pendance � l'assembly correspondant.
    Par contre,
    • �a n'est support� qu'en Unicode (enfin, plus ou moins)
    • Il faut un appel explicite � InitCommonControlsEx() pour avoir les contr�les standard qui s'affichent. Sinon, tu auras typiquement une erreur ERROR_CANNOT_FIND_WND_CLASS en cherchant � afficher ta bo�te de dialogue.

    Voici les lignes de code donn�es par Visual lui-m�me dans un projet MFC:
    Code C : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #ifdef _UNICODE
    #if defined _M_IX86
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
    #elif defined _M_IA64
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
    #elif defined _M_X64
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
    #else
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
    #endif
    #endif
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre exp�riment� Avatar de benito9253
    Homme Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 205
    Par d�faut
    Ca marche !! Merci beaucoup M�dinoc !!

    Ca rend quand m�me beaucoup mieux comme �a !

    J'ai aussi fais quelques petits tests:
    • Ca semble marcher m�me lorsqu'on n'utilise pas l'Unicode
    • Ca fonctionne aussi sans appeler InitCommonControlsEx()

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Citation Envoy� par benito9253 Voir le message
    Ca semble marcher m�me lorsqu'on n'utilise pas l'Unicode
    Je sais, voir mon lien pour une petite id�e de ce qui marche et ne marche pas.
    Ca fonctionne aussi sans appeler InitCommonControlsEx()
    �a, j'ai bien peur que �a d�pende de l'OS, et peut-�tre aussi des biblioth�ques employ�es. Des fois, sans, �a foirait sous XP.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre exp�riment� Avatar de benito9253
    Homme Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 205
    Par d�faut
    Citation Envoy� par M�dinoc Voir le message
    Je sais, voir mon lien pour une petite id�e de ce qui marche et ne marche pas.
    Je vais essayer de comprendre mais j'ai un peu de mal avec l'anglais, et les traducteurs donnent des versions un peu bizarre...

    Citation Envoy� par M�dinoc Voir le message
    �a, j'ai bien peur que �a d�pende de l'OS, et peut-�tre aussi des biblioth�ques employ�es. Des fois, sans, �a foirait sous XP.
    Dans ce cas je vais garder InitCommonControlsEx(), on sait jamais.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. ActiveX winsock avec windev et Windows Vista
    Par Le Shadow dans le forum Windows Vista
    R�ponses: 1
    Dernier message: 16/11/2007, 07h59
  2. [C#]donner un style windows vista a une application
    Par drayif dans le forum Windows Forms
    R�ponses: 8
    Dernier message: 18/07/2007, 02h43
  3. R�ponses: 1
    Dernier message: 19/06/2007, 12h43
  4. Appli d�velopp�es avec D6 refus�e par Vista
    Par ybruant dans le forum Delphi
    R�ponses: 8
    Dernier message: 05/04/2007, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo