pDC an OnDraw-Funktion übergeben
-
Hallo,
ich habe ein Problem beim aufrufen der OnDraw funktion.
Wenn ich diese Funktion void CHexEditorView::OnDraw(CDC* pDC) aufrufen möchte muss ich ja dieses pDC an die Funktion übergeben.
Leider weiß ich nicht was dieses pDC ist, bzw. wo es her kommt.
Das aufrufen mache ich aus einer anderen Cpp-Datei so:
CHexEditorView hEv;
hEv.OnDraw(CDC* pDC);
Das müsste eigentlich passen.Hat jemand ne Idee mit dem pDC?
Vielen Dank im Vorraus!
Gruß Gabele
-
Anstatt die OnDraw-Methode selbst aufzurufen, solltest Du lieber ein Neuzeichnen veranlassen (durch Invalidate/RedrawWindow o.ä.), wodurch die OnDraw-Methode automatisch aufgerufen wird.
-
hmm, ich muss die Funktion aber schon direkt aufrufen.
Also ich habe ein Programm das HexEditor heißt und Dateien eben als Hexadezimalzahlen darstellt. Dieses Programm habe ich aber nicht slebst geschrieben. Ich will es aber in mein anderes selbstgeschriebenes Programm einbauen um dort ausgelesene Daten anzuzeigen.
Dazu habe ich zwei Dateien (HexEditorView.cpp und CHexEditorDoc.cpp) in das Programm implementiert.
Nun möchte ich eben die "Funktion" HexEditorView::OnDraw(CDC* pDC) aufrufen, da dort das eigentliche zeichnen stattfindet. Nur leider weiß ich nicht was es mit dem pDC auf sich hat.
Bin dankbar für jede Hilfe.
Gruß Gabele
-
Anscheinend hast du auch die Grundlagen der objektorientierten Programmierung nicht verstanden. Vermutlich wird es eine Klasse CHexEditor geben, von der du erst mal eine Instanz erzeugen musst. Diese Klasse bringt ihre eigenen View-Methoden und auch Datenmodelle mit. Das Framework wird sich im Falle eines Aufrufs von Invalidate/RedrawWindow (so wie es Airdamn bereits geschrieben hat) selbst kümmern, dass CHexEditor::OnDraw aufgerufen wird. Man ruft nie diese Funktion selber auf.