Wie kann man glabale Variable definieren in MFC?



  • Hallo alle,

    Auf MFC Dialog habe ich zwei classes, CtestDlg und ImgProcessor. In CtestDlg habe ich ein Edit Control, durch dem ein Variable von Eingabe definiert wird. Diese Variable wird von ImgProcessor benutzt. Ich dachte, diese Variable muss als globale Variable definiert werden, aber bei extern geht es nicht. Wie kann ich diese Variable globalizieren?

    Vielen Dank im Voraus,

    innuj



  • Du hast nicht (nur) zwei Klassen, sondern auch Objekte diese Klassen, mit denen du hantierst. Das heißt, der ImgProcessor benötigt einen Zeiger/Referenz/whatever auf den aktiven Dialog und kann dqarüber auch dessen Member verwenden.

    (PS: Globale Variablen sind böse - gewöhn dir gar nicht erst an, welche zu verwenden)



  • Vielen Dank für Deine Antwort.

    Wenn ich testDlg.h in imgProcessor.cpp inkludiere, kommt fehler vor:
    1>d:\innuj\mycpp\test\test\test1dlg.h(16) : error C2065: 'IDD_OCMFCTEST1_DIALOG': nichtdeklarierter Bezeichner

    Aber lauft das Programm glatt ohne #inlcude<testDlg.h>.

    Es wäre sehr nett, wenn Du mir ein Bespiel gäbst.



  • Die Fehlermeldung ist doch recht eindeutig - an der Stelle ist die Ressourcen-ID des Dialogs nicht bekannt (die sollte in der ressource.h stehen - die Frage ist nur, warum die hier nicht eingebunden ist).


  • Mod

    Evtl. resource.h nicht included?



  • Ihr Beide haben recht. Ich habe die Resource.h nicht in testDlg.h inkludiert. Jetzt geht es. Vielen Dank noch mal. 😋


Anmelden zum Antworten