MFC-Steuerelemente



  • 2 Wege:

    Über die ID:

    Du hat beim Resourceneditor eine ID vergeben.

    GetDlgItem(IDC_BUTTON1)->SetWindowText("Hallo Welt");

    Du hast ein Objekt angelegt:

    m_Button1.SetWindowText("Hallo Welt");

    Schau mal hier:

    http://www.henkessoft.de/inhalt.htm

    vllt. bringt Dich das weiter.

    Ansonsten mal nach Visual C++ in 21 Tagen bei google suchen, da gabs mal ne Ausgabe kostenlos zum downloaden.



  • Knuddlbaer schrieb:

    2 Wege:

    Ansonsten mal nach Visual C++ in 21 Tagen bei google suchen, da gabs mal ne Ausgabe kostenlos zum downloaden.

    Und hier der Passende link
    (Was bitte funktioniert an diesem link nicht ?)





  • Das Buch hab ich mir sogar gekauft aber ich finds ehrlich gesagt richtig mies 😉

    "21 in sich abgeschlossene Lektionen machen Sie als Einsteiger schon bald zum Experten"

    "Leserprofil: Fortgeschrittener bis Experte"

    🙄

    Das ist echt so ein Abtippbuch wo zumindest ich nichts bei lerne.
    Wirklich ärgerlich ist nur das ich an so einfachen Dingen scheiter.

    2 Fragen:

    Ich habe eine Bildkomponente aufgenommen, wie kann ich nun ein Bild darstellen(ohne das mit einem Befehl zu machen, direkt in der Entwicklungsumgebung!)

    Ich habe ein zweites Dialogfenster gemacht, wie kann ich das aufrufen?

    Danke für eure Hilfe 👍



  • Super, Frage 1 hat sich soeben geklärt, war ja auch zu einfach 😞



  • CDialog::DoModal()

    siehe FAQ!!! benutze die suchfunktion bevor du sowas postest



  • Moin,
    lies mal Visual C++ 6.0
    für Einsteiger und Fortgeschrittene

    von Hans-Jürgen Scheibl , Hanser Verlag

    Leseproben gibt es auf seiner HomeSeite.



  • Jo, Scheibl ist gut!

    Aber wie man einen zweiten Dlg anzeigt steht auch bei Chapman!



  • Ich packs nicht:

    Ich habe ein neues dialogfeld erstellt.

    Ich habe rechtsklick drauf gemacht und eine neue klasse angelegt.

    ich habe die neu erstellte headerdatei in dem hauptdialog eingebunden

    nun sagt mir der tolle chapman ich soll eine member variable festlegen und auf privat setzen aber das klappt gar nicht wer er das beschrieben hat,ich kann keine hinzufügen.

    Wer ist so nett und hilft mir beim letzten schritt?
    Mir sagt das alles gar nichts, dieses Buch ist der letzte Dreck, ich habe ja schon viel gelesen aber dieses buch ist einfach nur 😡 😡

    Ums nochmal zu verdeutlichen:

    Ich habe 2 Dialogfelder.

    Das Hauptprogramm und ein neu erstelltes wasich per button im hauptprogramm aufrufen will.
    Wie geht das?



  • Wenn's per Assi bei Dir nicht klappt, dann schreib's doch zu Fuss in den Header!

    private:
    CMsgDlg m_dMsgDlg ;
    


  • Wenn ich ein neues Fenster erstellen möchte oder ein Dialogfenster anzeigen lassen will, erstelle ich eine neue MFC-Klasse vom Typ CDialog (wenn das Eingabefenster zum hinzufügen einer neuer Klasse kommt, dann kannst du das da auswählen).
    Auf diese Klasse muß ein Objekt erstellt werden. Das machst du am besten in der Doc-Klasse, kannst du aber auch in der View machen.
    Für das neue Objekt stehen dir viele Routinen zur Verfügung, unter anderem auch um das Dialogfenster aufzurufen.

    Um es von einem Button aufzurufen klickst du beim entsprechenden Button auf Eigenschaften und dann auf den "Blitz" oben in der Registrierkarte. Es folgt eine Aufstellung der Nachrichten, die der Button verarbeiten kann. Klicke auf die Nachricht "BN_CLICKED".
    VC wechselt in den Quellcodeeditor zurück und hat dir gleich eine Methode angefertigt wo du deinen weiteren Quode eingeben kannst (aber das weißt du bestimmt schon 😉 ).
    Hier gibts du den Namen deines Objektes (von der neu erstellen Klasse) ein und wählst danach die Methode "DoModal()"
    Hier mal kurz meine kleine Phrase (Test2 ist die Klasse, lala das Objekt):

    void CtestView::OnBnClickedButton2()
    {
    	// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.
    	test2 lala;
    	lala.DoModal();
    }
    

    Hoffe, konnte dir etwas weiterhelfen.

    gruß Olli


Anmelden zum Antworten