|
Dernière réponse | |
---|---|
Sujet : [VC++] View -> variable globale help! | |
Slash- | Moi je fais ce qu'on me demande...
merci ca fonctionne comme ca ! :) |
Aperçu |
---|
Vue Rapide de la discussion |
---|
Slash- | Moi je fais ce qu'on me demande...
merci ca fonctionne comme ca ! :) |
Tetragrammaton IHVH |
|
Slash- | Ya personne???? :( |
Slash- | Il n'y a personne pour m'aider? |
Slash- | Ben si...
en fait, j'ai une bd access, et dans mon applic il y a une listbox, ce que je dois faire c'est rapatrier les noms de la bd pour les foutres dans la listbox donc j'ai cree la connexion a la bd -> ok j'ouvre la bd dans l'applic (open()) -> ok j'ai cree une variable membre (m_lbNoms) de type CListBox qui est en rapport avec le control_id idc_list (donc la listbox) -> ok et dans le fichier CCarnetView.cpp, dans la methode OnInitialUpdate, je veux faire ceci : m_lbNoms.AddString(m_Nom) et le compilateur me dit que m_Nom est un "undeclared identifier"... je vois pas ce qui est mal fait?? |
H4dd3R | Ca devrait marcher.. Tu utilises pas le bon objet?? |
Slash- | C'est encore moi, j'ai une autre question
voila j'ai les fichiers DBCarnet.h et cpp dans lesquels sont definis certaines variables (en l'occurence m_Nom) dans le fichier CCarnetView.cpp, il y a un include pour DBCarnet.h, donc logiquement je devrais pouvoir acceder a m_Nom dans CCarnetView.cpp ? c'est ce que j'essaye de faire dans la methode OnInitialUpdate, mais il me dit que m_Nom = undeclared identifier qu'ai je mal fait? merci a+ |
Slash- | AAAAAAAAAAahhhhhhhhhhhhhh j'ai trouve :)
j'avais oublie d'inclure le header qu'il faut ! :) merci |
Slash- | Ou que je la mette, j'ai toujours les meme 3 erreurs!
c'est pas normal, qu'est ce que je fais de travers???? :( en resume : j'ai cree une classe associe a une base de donnees access (-> dao), il faut maintenant que je cree un objet de cette classe, et ca marche jamais! :( la classe s'appele CDBCarnet aidez moi svp ... |
xilebo | Essaie de la mettre dans stdafx.h , comme ca elle est visible par toutes les classes ( n'oublie pas aussi de mettre le .h associé dans stdafx.h ).
Mais bon , faut savoir qu'en MFC , on n'utilise jamais de variables globales, cree ta variable dans la classe CMyApplicationApp et apres tu accede a celle en faisant : (CMyApplicationApp *)AfxGetApp()->nom_variable. (accessible de partout) |
Slash- | C'est mon prof qui veut ca...
#include "stdafx.h" #include "Carnet.h" #include "CarnetDoc.h" #include "CarnetView.h" CDBCarnet oCarnet; // <--- la var globale #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif voila donc c'est la que je dois la mettre? et ben ca me donne 3 erreurs! 1) error C2146: syntax error : missing ';' before identifier 'oCarnet' 2) error C2501: 'CDBCarnet' : missing storage-class or type specifiers 3) fatal error C1004: unexpected end of file found et meme si je mets la var globale apres le #endif, ca me donne les memes erreurs... ou la mettre???? je deviens fou :-( |
H4dd3R | A mort les variables globales!! ;)
(la seule que j´accepte c CWinApp). Sinon tu la met juste après les include, et hop une variable globale pour ttes les classes de ton app. [edtdd]--Message édité par H4dd3R--[/edtdd] |
El_gringo | qui te dit de déclarer un variable globale, et pour faire quoi ? |
Slash- | Salut, voici mon fichier CCarnetView.cpp
on me dit de declarer une variable en globale, mais ou dois je la declarer??? // CarnetView.cpp : implementation of the CCarnetView class // #include "stdafx.h" #include "Carnet.h" #include "CarnetDoc.h" #include "CarnetView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ////////////////////////////////////////////////// /////////////////////////// // CCarnetView IMPLEMENT_DYNCREATE(CCarnetView, CFormView) BEGIN_MESSAGE_MAP(CCarnetView, CFormView) //{{AFX_MSG_MAP(CCarnetView) // NOTE - the ClassWizard will add and remove mapping macros here. // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG_MAP // Standard printing commands ON_COMMAND(ID_FILE_PRINT, CFormView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT, CFormView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW, CFormView::OnFilePrintPreview) END_MESSAGE_MAP() /////////////////////////////////////////////////////// ////////////////////// // CCarnetView construction/destruction CCarnetView::CCarnetView() : CFormView(CCarnetView::IDD) { //{{AFX_DATA_INIT(CCarnetView) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT // TODO: add construction code here } CCarnetView::~CCarnetView() { } void CCarnetView::DoDataExchange(CDataExchange* pDX) { CFormView::DoDataExchange(pDX); //{{AFX_DATA_MAP(CCarnetView) // NOTE: the ClassWizard will add DDX and DDV calls here //}}AFX_DATA_MAP } BOOL CCarnetView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CFormView::PreCreateWindow(cs); } void CCarnetView::OnInitialUpdate() { CFormView::OnInitialUpdate(); GetParentFrame()->RecalcLayout(); ResizeParentToFit(); } ///////////////////////////////////////////////////////////////////////////// // CCarnetView printing BOOL CCarnetView::OnPreparePrinting(CPrintInfo* pInfo) { // default preparation return DoPreparePrinting(pInfo); } void CCarnetView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add extra initialization before printing } void CCarnetView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add cleanup after printing } void CCarnetView::OnPrint(CDC* pDC, CPrintInfo* /*pInfo*/) { // TODO: add customized printing code here } ///////////////////////////////////////////////////////////////////////////// // CCarnetView diagnostics #ifdef _DEBUG void CCarnetView::AssertValid() const { CFormView::AssertValid(); } void CCarnetView::Dump(CDumpContext& dc) const { CFormView::Dump(dc); } CCarnetDoc* CCarnetView::GetDocument() // non-debug version is inline { ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CCarnetDoc))); return (CCarnetDoc*)m_pDocument; } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CCarnetView message handlers |