2010-11-26 16 views
1

Je suis récemment en train d'éditer un projet open source en visuel C++ 2010, je ne connais pas grand chose à vC++, (je n'ai que 5 jours d'expérience en C++), avec ma petite connaissance interface utilisateur du projetchanger l'icône d'un dialogue

Il n'y a qu'une seule icône dans mon projet, les applications affichent l'icône principale en tant qu'icône, en même temps je veux que cette icône soit aussi sur le titre d'une boîte de dialogue (la boîte de dialogue être montré quand un bouton dans le formulaire principal est cliqué),

le dialogue est déjà dans les ressources/boîtes de dialogue mais je veux changer l'icône de lui;

+1

Si vous avez seulement 5 jours d'expérience en C++, [veuillez choisir un bon livre C++] (http://stackoverflow.com/ questions/388242/the-definitive-c-book-guide-and-list) et lisez-le. Apprenez les principes et la théorie puis appliquez-le en essayant des projets personnels de votre choix. Je ne veux pas être offensant ou quoi que ce soit de ce genre, mais avant d'aller éditer autour d'un projet C++ open source, allez d'abord apprendre le bon C++. –

+0

Ensuite, éditer un projet open source existant n'est pas la solution. Vous pouvez lire le code source ouvert et voir comment c'est fait, mais vous devriez d'abord essayer de créer vos propres applications et commencer vos propres projets personnels. Ensuite, une fois que vous êtes à l'aise, vous pouvez entreprendre de plus gros projets. Commencez petit en premier. –

+0

@In silico oui vous un correct mais je suis dans un processus de développement de projet utilisant principalement delphi mais c'est une partie que j'ai besoin de faire de petits changements dans l'application vC++ – VibeeshanRC

Répondre

3

Vous devez trouver la procédure de dialogue de la boîte de dialogue qui vous intéresse, et dans le gestionnaire de messages WM_INITDIALOG (vous devez l'ajouter si ce n'est pas déjà) utiliser WM_SETICON pour définir l'icône:

// hIcon is your icon handle 
SendMessage(hDlg, WM_SETICON, ICON_SMALL, (LPARAM)hIcon); 
SendMessage(hDlg, WM_SETICON, ICON_BIG, (LPARAM)hIcon); 
+0

merci beaucoup je l'ai eu – VibeeshanRC

0

Vous pouvez également rechercher LoadIcon s'il s'agit d'un MFC (CDialog par exemple)