2 Toolbars in 2 Views (je eine)



  • HI Leute ich hab mehrere Views und will in jedem View ne andere Toolbar haben, komme aber nicht so ganz damit zurecht, also mein Problem ist, mit hilfe des Forums und Tag 12 in VC++ in 21 Tagen habe ich es hinbekommen, dass ich zwei Toolbars laden kann und anzeigen und wieder ausblenden. Das mache ich mit

    ShowControlBar(&m_wndEinstellungen_TB, true , true);//TB anzeigen
    

    das funktioniert auch einwandfrei. Jetzt will ich aber diese FKT aus einer anderen View aufrufen, denn wenn ich das richtig verstanden habe muss ich die TBs ja alle im Mainframe createn und laden. Ich hab also eine kleine FKT geschrieben die LoadToolbar heißt, die ich dann aus anderen Klassen in der OnCreate aufrufe. Doch dann schmiert er mir jedes mal ab.
    Darf ich die TBs nicht einfach alle im Mainframe laden?
    Kann ich die ShowToolBar in der OnCreate von ner anderen Methode aufrufen?
    Wenn man TBs im Mainf laden darf und in OnCreate aufrufen wo könnte ich dann nach dem Fehler suchen??
    Vielen Dank schon im Voraus



  • Was spricht dagegen, das in SwitchView zu machen?

    Ich hab das zwischen

    // neuen View setzen
    		SetActiveView(pNextView);
    

    und

    // layout updaten
    		RecalcLayout();
    

    🙂



  • man man man von dir sollte ich mir echt eine scheibe abschneiden! Hab es jetzt so:

    case IDD_EINSTELLUNGEN:
    			pNextView = create_view<CEinstellungenView, CEinstellungenDoc>(this); 
    			ShowControlBar(&m_wndEinstellungen_TB, true , true);
    			break;
    

    Und des geht wunderbar aber warum geht das aus der OnCreate der anderen Klasse nicht?



  • Neee, lass ma, dann sind mir alle Hosen zu groß. 🤡

    Ich vermute, dass beim Aufruf aus dem OnCreate irgendwas zeitlich nicht passt. Mit den OnCreate Teilen hab ich hin und wieder ein Problem, was ich dann eben mehr oder weniger elegant umgehe (Titelzeilentext setzen war auch sowas). 🙂



  • wenn du es grad ansprichst wo hast du das rein gepackt weil bei mir läuft das nur im OnInitialUpdate und das ist doof, weil er dann erst beim ersten Viewswitch den richtigen Titelzeilentext anzeigt! 🙂



  • Ich ruf das einfach auch im InitInstance einmal auf. 🙂



  • schön das geht ja echt richtig easy wenn man weiß wo man es rein machen muss 🙂 🙂
    Danke

    Aber ich hab noch ne Frage zu der Switchview,
    kann ich da irgendwie Fehler abfangen? Weil wenn ich zu meiner HTML-View switche, und es ist kein gültiger Pfad dann meldet er das lädt aber den View dennoch, er soll in dem Fall den View aber nicht laden.



  • Entweder musst du das vorher prüfen oder du schaltest danach gleich wieder zurück.
    Vielleicht läßt sich auch mit try catch was basteln.



  • hm OK ich probier es mal vielen Dank wenn ich nicht weiter weiß meld ich mich nochmal, hab es aber mal in meine Liste bekannte Bugs geschrieben. (also in mal zurückgestellt)


Log in to reply