In der Dokumentenklasse habe ich eine Methode (OnRS232Lesen), die die Variable public: CString sMsg erzeugt. Über das Interface GetData() soll sie für die Ansichtsklasse zugänglich sein.
In der OnRS232Lesen() wird sie in einer MessageBox auch richtig ausgegeben. Aber in der Methoden OnDraw regt sich nix. Sie soll eigendlich im Fenster der SDI-Anwendung erscheinen.
Code OnDraw:
C++:
void CRS232SerialCom1View::OnDraw(CDC* pDC) { CRS232SerialCom1Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // ZU ERLEDIGEN: Hier Code zum Zeichnen der ursprünglichen Daten hinzufügen
CString txt=pDoc->GetData();
pDC->TextOut(0,0, txt);
}
Wer kann mir helfen diesen Fehler zu finden und zu beseitigen.
Thx Markus -- Hier spricht die dunkle Seite der Macht!
Hi! Dir auch schönes neues Jahr Erscheint bei pDC->TextOut(0,0, "Test"); etwas? Es kann sein, dass du irgendwo einen Pinsel gesetzt hast, de rnicht sichtbar ist. Wenn das geht - wie schaut die Deklaration von GetData() aus? Bekommst du beim Kompilieren Warnungen?
Warnungen gibt es auch keine. Einen Pinsel habe ich nicht gesatzt. In einem Beispiel habe ich mal eine Ausgabe versucht. Dort wurde auch nirgends ein Pinsel eingesetzt. Außerdem befindet sich der Cursor immer im Fenster immer oben links. Wäre der Text einfach nur weiß, so müsste der Curser doch wandern bzw. sich eine Scrollleiste bilden (verwende CEditView).
Wenn ich versuche Test auszugeben, dann verspringt das Prog nicht in die View.
Hast Du eine Idee?
Thx Markus -- Hier spricht die dunkle Seite der Macht!
Gib mal statt (0, 0) eine größere Position an, z.B. (20, 20), da die Position die BaseLine beschreibt, d.h. der Text steht dann oberhalb (im Rahmen), aber wegen Clipping siehst du dann nichts... Evtl. auch noch Farbe und Font vorher setzen...