bonjour,

j'ai pas réussi à trouver un titre court et explicite pour mon pb, désolé

j'ai un projet SDI. j'ai mis un CTabCtrl dans ma CFormView.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
// dans le .h
CMyTabCtrl	m_ViewTab;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
void CCOACH_equipeView::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCOACH_equipeView)
	DDX_Control(pDX, IDC_VIEWTAB, m_ViewTab);
	//}}AFX_DATA_MAP
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void CCOACH_equipeView::OnInitialUpdate()
{
	CFormView::OnInitialUpdate();
	GetParentFrame()->RecalcLayout();
	ResizeParentToFit();
 
	m_ViewTab.DeleteAllItems();
	// Création des onglets
	m_ViewTab.InsertItem(0, _T("    &Feuille de match      "));
	m_ViewTab.InsertItem(1, _T("   &Classement individuel   "));
	m_ViewTab.InsertItem(2, _T(" &Classement individuel IWF "));
 
	m_ViewTab.Init();
}
Lorsque je lance mon appli, les 3 onglets apparaissent et je peux passer de l'un à l'autre (ouf!).
Le problème, c'est quand je clique sur Nouveau (le bouton de la CToolBar ou dans le menu fichier). Là mon appli plante. j'ai une jolie MessageBox qui s'affiche avec le message suivant :

Debug Assertion Failed

Program: bidule.exe
File: wincore.cpp
Line: 668
pour info, dans wincore.cpp je trouve
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ASSERT(pWnd->m_hWnd == NULL);   // only do once
J'obtiens le même plantage si j'ouvre un fichier de données (bouton Ouvrir du CToolBar ou dans le menu Fichier).

Tant que je ne mets pas de CTabCtrl, tout va bien : mon prog lit le fichier de données, peut sauvegarder dans un fichier... (mais ya pas d'affichage sans le CTabCtrl )

Tout à commencer à foirer quand j'ai tripoté le OnInitialUpdate().

Quelqu'un voit mon erreur? ou mon oubli (de quelquechose de vachement important)

Merci

PS : la classe CMyTabCtrl marche nickel, je l'ai utilisé pour un projet dialog based.