none
Zugriff auf Ausgabefenster RRS feed

  • Frage

  • Hallo

    Hallo, ich habe mit VS2010 eine leere Anwendung im Stil "Visual Studo" erstellt. Das habe ich gemacht, weil mir das eine Menge Gestaltungsarbeit abnimmt. Habe es schon fast geschafft, die Anwendung meinen Bedürfnissen anzupassen. Aber nur fast....
    Auf der linken Seite gibt es eine CTreeCtrl, dort wo normalerweise die Projektstruktur angezeigt wird. Im Beispiel wird die Struktur statisch angelegt (Bla Bla Text).
    Nun will ich aber die CTreeCtrl zur Laufzeit aus meiner CView-Klasse bestimmen. Leider widersetzt sich jeder Versuch, zugriff auf das Element zu bekommen. Was ich auch anfange, nichts funktioniert.
    Das gleiche gilt für den Output im unteren Bereich, dies ist eine ListCtrl. Jeglicher Zugriff funktioniert auch hier nicht.
    Wäre nett wenn mir jemand konkret sagen könnte, wie es geht.
    Gruss
    Jo

    Danke für eure Mühe

    Jo

    [Edit:Habe den Text umgestaltet, weil ich hoffe, dass er so leichter verständlich ist]




    Sonntag, 28. Juli 2019 11:29

Antworten

Alle Antworten

  • Hallo Jo,

    Wenn ich richtig verstanden habe, hast Du eine CTreeView-Klasse, die ein CTreeCtrl-Objekt enthält. Auch diese CTreeView-Klasse wird von der CView-Klasse abgeleitet, wie in diesem Artikel beschrieben:
    Derived View Classes Available in MFC
    Um die Nachrichten von diesem CTreeCtrl-Objekt in der Hauptklasse zu verarbeiten, kannst Du versuchen, eine separate Klasse wie das DRAWCLI-Beispiel zu verwenden. Weitere Informationen zu diesem Thema findest Du hier:
    (MFC) How can a parent class receive a control's messages if the control is a private member?

    Gruß,

    Ivan Dragov


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Mittwoch, 31. Juli 2019 11:00
    Moderator
  • Hallo und Danke für deine Mühe!

    Habe es jetzt nach viel Schweiss geschafft, zugriff zu bekommen.

    Das Problem war, dass ich zuerst nicht begriffen habe, das die Klassen welche ich

    ansprechen wollte, CMainFrame unterstellt sind.

    Nun geht alles.

    Mittwoch, 31. Juli 2019 14:15
  • Ist schon eine Weile her, dass ich so ein Projekt gemacht hab. Ich kann mich allerdings erinnern, dass es nicht einfach war, Pointer auf all diese Objekte zu bekommen, weil die im Standardgerüst alle "private" oder "protected" sind. Ich hab's mangels Besserwissens gelöst, indem ich die Hauptklassen geändert hab, sodass diese Subklassen eben nicht mehr "private" waren ... aber ich bin immer noch der Meinung, dass dies von Microsoft nicht so vorgesehen ist.

    FireHeart

    Dienstag, 26. Mai 2020 10:27