Verständnisproblem



  • Hallo,

    ich arbeite jetzt schon einige Zeit mit VC++ und habe auch schon größere Anwendungen erstellt. Dennoch fehlt mir der Überblick hinsichtlich Fenster und Dialoge.
    Ich gehe mal davon aus, daß ich ein Document/View Projekt mit einer CFormView habe. Jetzt kann ich neue Dialoge anlegen, darauf Steuerelemente platzieren und dem Dialog eine Klasse zuordnen und so mit ihm arbeiten.
    Was ist aber, wenn ich gar kein Dialog mit Steuerelementen haben möchte, sondern einfach ein leeres Fenster, in das ich frei zeichnen kann ? Ich meine so was ähnliches wie die Seitenvorschau, wo ich auch mit TextOut() einfach in das Fenster male. Was muß ich machen, um sowas hinzubekommen ? Erstelle ich dann einfach eine Klasse, die von CWnd abgeleitet ist ? Wie muß ich aber dann mit dem Create(...) umgehen ? Und wie kann ich dann in den Fensterbereich malen ?

    Eine zweite Frage währe: Wie bekomme ich ein solchen freien Bereich zum Malen in einen erstellten Dialog mit Steuerelementen ? In der Auswahlleiste im Ressourceneditor gibt es ja keinen solchen Bereich.

    Vielleicht sind meine Fragen echt blöd und grundlegend, aber ich währe euch dennoch dankbar, wenn eure Antwort nicht alzu kompakt ist, so daß ich damit nichts anfangen kann.

    Danke !!!



  • Du musst in der SDI/MDI-Anwendung als Viewtyp ein C(Scroll)View im AppWizard angeben... Dort kannst du dann bei OnDraw deine Zeichenroutinen ausführen... www.codeguru.com bietet einige samples... Aber BTW: In Dialoge kannst du natürlich genau wie in Fenster auch zeichnen. Bei OnPaint geht das (is aber unschön)



  • Ja, das weiß ich. Aber wie kann ich in meinem bestehenden CFormView Projekt ein solches Fenster einfügen, in dem ich zeichnen kann ???



  • Hat niemand eine Antwort für mich ?



  • Hi,

    ich weiß nicht genau, ob ich dich richtig verstehe. Aber es steht dir frei einfach eine Klasse von CWnd abzuleiten (oder auch nicht) und in der neuen Klasse deine Zeichenroutinen entsprechend zu implementieren.

    Die Fensterklasse läßt du dir dann einfach mit Create anzeigen. Fertig ist der Lack, falls das dein Problem war.

    Grüße, Volle.


Anmelden zum Antworten