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 !

Sujet : Classe et fenêtre [ Divers / Débutant(e) ] (DMK04)

jeudi 1 juin 2006 à 16:45:27 | Classe et fenêtre

DMK04

Bonjour,

Je voudrais savoir s'il est possible de créer une fenêtre depuis une classe, et si oui comment faut-il procéder ??

Merci,

A+

jeudi 1 juin 2006 à 16:46:38 | Re : Classe et fenêtre

Joky

Membre Club
Oui c'est possible
Ne pas oublier de mettre la procédure de message en static pour un bon fonctionnement

if(!Meilleur("Joky")) return ERREUR;<


jeudi 1 juin 2006 à 17:05:23 | Re : Classe et fenêtre

DMK04

Ok, merci, mais je ne vois pas comment appeler cette fonction depuis mon constructeur ?

int WINAPI WinMain(HINSTANCE hInst, HINSTANCE PrevhInst, LPSTR lpszArgument, int nFunsterStil)

je pense qu'il faut lui changer le nom d'abord, mais après ?

Merci



jeudi 1 juin 2006 à 17:13:38 | Re : Classe et fenêtre

Zootella

WinMain est la première fonction appelé au lancement de ton programme.

jeudi 1 juin 2006 à 17:16:10 | Re : Classe et fenêtre

DMK04

Oui je sais, mais moi je ne veux pa créer la fenêtre au lancement du programme...

jeudi 1 juin 2006 à 17:51:50 | Re : Classe et fenêtre

Joky

Membre Club
Ben imaginons que tu réussisses à créer ta classe...

int __stdcall WinMain(..)
{
    WINDOW myWnd;

    myWnd.Show();
    return 0;
}
un truc dans le genre quoi...

if(!Meilleur("Joky")) return ERREUR;<


jeudi 1 juin 2006 à 18:02:23 | Re : Classe et fenêtre

DMK04

Désolé mais je ne vois pas...

Je veux faire une classe graphe pour tracer un graphique dans uen fenêtre, et je veux que quand dans mon programme principal je fais un "graphe * leGraphe = new graphe()" ca me crée uen fenêtre...

Merci

vendredi 2 juin 2006 à 09:43:08 | Re : Classe et fenêtre

ymca2003

Met le CreateWindow dans le constructeur de la classe.

dimanche 4 juin 2006 à 14:54:17 | Re : Classe et fenêtre

DMK04

Salut,

Merci pour votre aide,

j'ai essayé, mais après j'ai 1 erreur :

error C2440: '=' : cannot convert from 'long (__stdcall grapheGDI::*)(struct HWND__ *,unsigned int,unsigned int,long)' to 'long (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,long)'

c'est lors de l'initialisation de la WNDCLASS

int grapheGDI::creerFenetre()
{
    HINSTANCE hInst = /*AfxGetResourceHandle()*/ GetModuleHandle(NULL);
    int nFunsterStil = SW_SHOWDEFAULT;

    init();
    MSG Messages;
    WNDCLASS wc;
   
     wc.style = 0;
     wc.lpfnWndProc = FenetreProc;
     wc.cbClsExtra = 0;
     wc.cbWndExtra = 0;
     wc.hInstance = hInst;
     wc.hIcon = LoadIcon(hInst, "A");
     wc.hCursor = LoadCursor(NULL, IDC_ARROW);
     wc.hbrBackground = CreateSolidBrush (0x909090);
     wc.lpszMenuName = "ID_MENU";
     wc.lpszClassName = "AppWnd";
     if (!RegisterClass(&wc))
         return -1;
....
}

LRESULT CALLBACK grapheGDI::FenetreProc(HWND frmhWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{.....}


Il n'arrive pas a convertir parce que "FenetreProc" fait partie de ma classe ??? J'ai essayé de rajouter "grapheGDI::" devant "FenetreProc" mais ça ne marche pas...

Quelqu'un aurait-il une idée ?

Merci,

A+

lundi 5 juin 2006 à 09:00:46 | Re : Classe et fenêtre

ymca2003

Réponse acceptée !
la WndPrpc doit être déclaré static.
POur avoir accees aux membres de la classe depuis la WndProc, passer this en dernier param de CreateWindow
at voir les post au sujet de SetWindowLong et WndProc en méthode static de class (j'ai déjçà répondu à plusiaurs questin s de ce type sur le fotum)


1 2

Cette discussion est classé dans : classe, fenêtre


Répondre à ce message

Sujets en rapport avec ce message

ClassName [ par garslouche ] Bonjour à tous,quand j'utilise Spy++ sur des fenêtres de programmes qui ne sont pas de moi, il donne le texte de la fenêtre et le nom de la classe. Co [API][WIN32] Enregistrement de classe de fenêtre [ par Jeffray ] Bonjour,J'ai un problème pour enregistrer une classe de fenêtre.J'utilise GetClassInfoEx() pour extraire les infos de la classe EDIT créée par Windows Threads 2, le retour! [ par goondy ] Bon, grace a vecchio56, j'ai pu claquer mon thread comme il fallait (cf http://cppfrance.com/forum.v2.aspx?ID=349494&nb=9).J'explique le truc : j'ai u Problème d’accès au contrôle d’une fenêtre. [ par Superweight ] Bonjour a tous,Mon problème est le suivant: lorsque que je crée une nouvelle classe sous un projet SDI, je souhaite pourvoir contrôler les contrôles d Bouton / CView [ par Ombitious_Developper ] Salut :J'ai créé un projet en MFC de type SDI.Je veux ajouter un Bouton dans la zone client de ma fenêtre.La classe de base de ma fenêtre est la class opengl bug [ par darmoor ] Voila je vien de debuter dans l'openGL et selon le tutorial jai fait ce qu'il falai et sa me marque une erreur:le code:#include #includ Récupérer le contrôle d’une fenêtre par une nouvelle classe [ par Superweight ] Bonjour, Je développe en c++ sous visual studio 6.0, je suis débutant dans le problème fenêtre cliente [ par raoulman ] Bonjour,J'ai un petit souci avec une fenêtre cliente et WM_PAINT, je m'explique.Aujourd'hui, j'ai une fenêtre qui contient une fenêtre cliente dedans. Splitter [ par Chapi72 ] Bonjour,je développe en VC 6.0 et j'ai créé un splitter permettant de diviser ma fenêtre.Au lancement de l'exe, j'ai vonlontairement voulu que la fenê creation d'une classe [ par enrageur ] J'ailmerais créer une classe mais qui renvoie un entier. Je sais créer une classe mais qui ne renvoie rien. Comment faire ?


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

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,468 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é.