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 };


Log in to reply