Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » OnDraw die 2.

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.01.2005, 18:33 Uhr
mstank



Hallo und ein super 2005 wünsche ich allen!

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.

Code Interface:

C++:
CString CRS232SerialCom1Doc::GetData()
{
    return sMsg;
}


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!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.01.2005, 10:32 Uhr
mike
Pinguinhüpfer
(Operator)


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?

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.01.2005, 15:33 Uhr
mstank



Hi Mike!

Die Deklaration von GetData() lautet:

public:
CString GetData();

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!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
03.01.2005, 21:17 Uhr
mike
Pinguinhüpfer
(Operator)


Nö. Loider. Gibt pDoc->GetData() überhaupt etwas zurück?
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.01.2005, 13:10 Uhr
Th



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...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: