Bonjour j'ai cr�� un petit ActiveX dans Visual c++ 6 et j'y ai ins�r� un bouton CONFIG (j'ai enregistr� le projet sous le nom de "active").
Je lui ai attribu� les propri�t�s suivantes:
ID: IDC_conf
Caption: CONFIG
J"ai aussi mis comme ID pour ma fen�tre IDD_FENETRE_ACTIVE
Ensuite je clique 2 fois sur mon bouton pour lui ajouter la fonction membre suivante: Onconf
Puis je vais dans mon ClassWizard:
Projet: active
Class_name: CActiveCtrl (il y a aussi CActivePropPage)
Objects_IDs: 2 possibilit�s: CActiveCtrl ou IDC_conf
Je choisis CActiveCtrl et dans la case message � droite je cherche M_CREATE : je clique deux fois dessus pour aller sur la partie de code correspondante et je rajoute le bout de code fournit dans la FAQ de Farscape
http://c.developpez.com/faq/vc/?page...tivexAddDialog
Ce qui donne:
Pour finir je vais dans ClassView, puis CActiveCtrl puis je vais �diter ma fonction OnDraw, ce qui devient:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 // CActiveCtrl message handlers int CActiveCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (COleControl::OnCreate(lpCreateStruct) == -1) return -1; // TODO: Add your specialized creation code here m_Active.Create(IDD_MYDIALOG, this); return 0; }
Je compile et j'obtiens 5 erreur:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 // CActiveCtrl::OnDraw - Drawing function void CActiveCtrl::OnDraw( CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid) { // TODO: Replace the following code with your own drawing code. pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH))); pdc->Ellipse(rcBounds); if(m_Active.m_hWnd) m_Active.MoveWindow(rcBounds, TRUE); }
Je remarque donc que ma variable m_Active n'est pas d�clar�e.error C2065: 'm_Active' : undeclared identifier
error C2228: left of '.m_hWnd' must have class/struct/union type
error C2228: left of '.MoveWindow' must have class/struct/union type
error C2228: left of '.Create' must have class/struct/union type
error C2065: 'IDD_MYDIALOG' : undeclared identifier
Je retourne dans le ClassWizard sous l'onglet Member Variables et 'obtiens ceci:
Je peux seulement cr�er une classe et non une variable!! Aussi bien avec CActiveCtrl que CActivePropPage comme class_name !!
Je suis donc coinc�...
Lors de la cr�ation de mon ActiveX ais-je omis de faire quelque chose ou pas?
Comment puis je r�soudre ce probl�me?
Partager