Zugriff auf Dialog-Elemente mit anderer Klasse



  • Hallo,

    ich habe ein kleines Problem und hoffe es kann mir hier jemand helfen. 🙂
    Und zwar habe ich mit MFC eine Dialog-basierte Anwendung erstellt.
    d.h. ich habe eine von CWinApp abgeleitete klasse, welche ein von CDialog abgeleitetes Objekt erstellt. Dieses Objekt enthält z.b. verschiedene Editfelder.
    Auf diese Elemente hätte ich nun gerne zugriff aus einer anderen Klasse XYZ.

    Das Hauptproblem ist, dass ich die Headerdatei von meiner Dialogklasse in keine meiner anderen Headerdateien einbinden kann, ohne dass es mehrere mir komplett unverständliche Fehler gibt. Also auch wenn ich sie in der abgeleiteten CWinApp Headerdatei include, und diese wiederum in eine meiner eigenen Klassen include kommen mehrere fehler (welche ausschließlich durch den includebefehl '#include "MeinCDialog.h"' bzw. '#include "MeinCWinApp.h"' ausgelöst werden.

    Und somit kann ich z.b. keinen Zeiger auf ein Objekt dieser Klasse definieren, mit welchen ich zugriff auf die elemente bekäme.

    Ein Beispiel für einen der Fehler:

    -MeinCDIalog.h(56) : error C2065: 'XYZ': nichtdeklarierter Bezeichner //XYZ ist die Klasse in welcher ich die "MeinCDIalog.h" included habe.

    und selbst in der XYZ.h kommen plötzlich haufenweise Fehler für stinknormale deklarationen.

    Wenn ihr noch mehr Infos braucht, sagt bescheid. Ich bin für jede Hilfe dankbar.

    viele grüße
    Hänschen Klein



  • Zusatz:

    Könnte es vllt daran liegen, dass sich beide Headerdateien gegenseitig includieren?? Darf man das nicht machen?

    Wenn ich die Dialogheaderdatei in XYZ.cpp includiere kommt nur noch ein einziger Fehler:

    -MeinCDialog.h(22) : error C2065: 'IDD_MEINCDIALOG': nichtdeklarierter Bezeichner

    code dazu (im public bereich): enum { IDD = IDD_MEINCDIALOG };


Anmelden zum Antworten