menue erstellen



  • hallo,
    ich habe ein einfaches problem aber keine ahnung wie ich vorgehen soll. google spuckt mir nichts aus und wenn ich in der suche "menue" oder "menü" eingebe finde ich nur einen eintrag.in den faq`s werden ebenfalls nur dynamische menues behandelt. ich möchte ein ganz normales menue machen habe es auch fertiggestellt. wie kann ich das jetzt in meinen dialog einbauen ? und meine anderen erstellten dialoge damit ansteuern ?? ausserdem möchte ich einen load und einen save dialog von da aus steuern.dazu müsste ich ja im quellcode etwas ansteuern und nicht direkt einen fertigen dialog. wie mache ich das ??

    danke euch !!



  • 1. Öffnen Sie den Dialog-Editor, indem Sie auf das Hauptdialogfeld der Anwendung im Ordner
    Dialog des Arbeitsbereichs doppelklicken. Im Beispiel doppelklicken Sie auf
    IDD_MENUS_DIALOG.
    2. Markieren Sie das gesamte Dialogfeld. Achten Sie darauf, daß keine Steuerelemente markiert sind,
    und öffnen Sie das Dialogfeld Dialogfeld Eigenschaften. (Sie öffnen hier die Eigenschaften für das
    Dialogfeld an sich und nicht für irgendein Steuerelement des Dialogfelds.)
    3. Wählen Sie aus der Dropdown-Liste Menü das eben erstellte Menü aus

    suche bei google nach VC++ 6.0 in 21 Tagen.pdf dort findest du ein Kapitel darüber.





  • besten dank dir, nach dm pdf googeln hat nich so recht geklappt. thx



  • ich weiss auch nicht ob ich zu dumm bin !?!?! aber würde mir nochmal jemand helfen ?? ich habe das menue erstellt und implementiert. jetzt kann ich dem menue aber keine funktion zuweisen. ich habe mir den link angeguckt. dort ist es so beschrieben:

    Menübefehle mit Funktionalität ausstatten

    1. Öffnen Sie den Menü-Editor für Ihr Menü.

    2. Öffnen Sie den Klassen-Assistenten über das Menü Ansicht.

    3. Es erscheint das Dialogfeld Hinzufügen einer Klasse (analog zum gestrigen Tag, als Sie ein zweites Dialogfeld aufgenommen hatten). Behalten Sie die Option Vorhandene Klasse auswählen bei, und klicken Sie auf OK (siehe Abbildung 6.6).

    das ganze sollte dann so ausssehen.

    http://www.se.fh-heilbronn.de/usefulstuff/VCPLUS6/bilder/bld06_06.gif

    wenn ich das aber mache kommt mein ganz normaler klassenassitent. und nicht dieses fenter wo ich vorhandene klasse auswählen kann.

    hoffe es ist nicht zu dämlich aber ich komme nicht weiter 😕

    danke euch !!



  • Normalerweise braucht ein Menü keine Klasse.
    Pack die Handler einfach ins Hauptfenster. 🙂



  • @ estartu ich bin dir echt dankbar fuer deine geduld !!
    aber ich weiss nicht was handler sind. am besten würde es mir ja gefallen wenn ich die dialoge einfach ins menue ziehen könnte 🙂 abr das geht ja leider nicht.
    wie soll ich die handler ins hauptfenster ziehen ?

    danke dir 😞



  • Also, mach mal den Assistenten auf. (Wenn der Dialog "Klasse hinzufügen" kommt, mach Abbrechen.)

    Wähle da als Klasse deinen Dialog.
    Dann hast du links in der Liste deine Menüpunkte, klick den an, dem du einen Befehl zuordnen willst.
    Und rechts erscheinen dann zwei Möglichkeiten, davon nimmst du WM_COMMAND und fügst die Funktion dafür hinzu.
    Dann sagst du "Code bearbeiten" und bist in der Funktion, die aufgerufen wird, wenn du den Menüpunkt anklickst.



  • perfekt !! es funktioniert. danke dir 😘

    eine frage hätte ich noch. ich kann dann ja unter command mir eine neue funktion anlegen. ich habe aber auch schon 2 fertiggestellte dialoge die ich von meinem hautpdialog aus aufrufen möchte. wie kann ich das machen ? so wie eben ? ich kann irgednwie nur neue funktionen hinzufügen. möchte aber auch dialoge damit öffnen

    danke dir.



  • Einen Dialog öffnet man mit DoModal. Such mal nach *DoModal*, dann solltest du einige Beispiele finden.
    Wenn du da nichts findest, sag mal den Klassennamen so eines Dialoges, den du aufmachen willst. Ich geb dir dann den 2-Zeiler. 🙂



  • habe es wirklich versucht 😞

    also :

    generator_option.DoModal();

    so habe ich es geschrieben.wenn ich unter ansicht-->klassenassistent gucke dann ist der klassenname des dialoges den ich öffnen möchte: generator_option.

    bekomme trotzdem diese fehlermeldung:

    :\dokumente und einstellungen\software\desktop\bin_maker\make_bin_1\s51dlg.cpp(603) : error C2065: 'generator_option' : nichtdeklarierter Bezeichner
    c:\dokumente und einstellungen\software\desktop\bin_maker\make_bin_1\s51dlg.cpp(603) : error C2228: Der linke Teil von '.DoModal' muss eine Klasse/Struktur/Union sein
    Fehler

    😞



  • Schau Dich mal hier um: http://www.coding-help.de/steuer_index.html
    Dort sind solche Sachen eigentlich sehr gut sowohl für VS6 Und VS.NET erklärt.



  • hannes12 schrieb:

    generator_option.DoModal();

    so habe ich es geschrieben.wenn ich unter ansicht-->klassenassistent gucke dann ist der klassenname des dialoges den ich öffnen möchte: generator_option.

    bekomme trotzdem diese fehlermeldung:

    :\dokumente und einstellungen\software\desktop\bin_maker\make_bin_1\s51dlg.cpp(603) : error C2065: 'generator_option' : nichtdeklarierter Bezeichner
    c:\dokumente und einstellungen\software\desktop\bin_maker\make_bin_1\s51dlg.cpp(603) : error C2228: Der linke Teil von '.DoModal' muss eine Klasse/Struktur/Union sein
    Fehler

    😞

    Du musst natürlich eine Instanz Deiner Klasse anlegen:

    generator_option generator_option_dlg;
    generator_option_dlg.DoModal();
    

    und in das .cpp File, in dem Du den Dialog aufrufst das .h-File includen, welches die Klasse generator_option enthält.



  • ok funzt. besten dank nochmal 🙂


Anmelden zum Antworten