bonjour,
premi�re chose : j'ai lu la FAQ, j'ai appliqu� le principe d'activation/d�sactivation qui y est propos�, et �a marche
(et l� ya tout le monde qui se demande : mais il est b�te lui, �a marche , alors qu'est-ce qu'il nous veut??)
explication : (ben oui explique, eh bouffon!!)
projet SDI
un certain bouton de ma CToolBar ne doit �tre actif que si une variable membre de mon CDocument ne pointe pas sur NULL.
donc quand je lance mon appli, le bouton est d�sactiv�. j'initialise la variable et le bouton devient actif.
maintenant, si j'ouvre un fichier de donn�es, je voudrais que l'�tat de mon bouton change en fonction de ce qui se trouve dans le fichier : si la variable est NULL, on d�sactive le bouton, si on a pu lui donner une valeur, on active le bouton.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 //dans la View // Désactivation du bouton Classement de la CToolBar ((CMainFrame*)this->GetParentFrame())->setTestBool(false); // Effacement de l'ancienne compétition si elle existait if (GetDocument()->getCompetition()!=NULL) { delete GetDocument()->getCompetition(); GetDocument()->setCompetition(NULL); } ... // initialisation de ma variable // Activation du bouton Classement de la CToolBar ((CMainFrame*)this->GetParentFrame())->setTestBool(true);
idem si je fais fait Nouveau ---> ma variable = NULL, le bouton doit �tre d�sactiv�
le probl�me c'est que je ne sais pas o� tester ma variable et changer l'�tat du bouton.
- dans mon CDocument, lors de la s�rialisation ??
----> comment changer la valeur du bool�en de la MainFrm qui donne l'�tat du bouton ??
- dans mon CFormView, dans le OnInitialUpdate() ??
merci pour vos lumi�res
(d'ailleurs, peut-on m'expliquer quand intervient le OnInitialUpdate?
quand j'appuis sur Nouveau, c'est appel�. mais quand j'appuis sur Ouvrir ou Sauvegarder?)
Partager