Einfache Text ausgabe

Cem

Grünschnabel
Hallo erstma,

Seit einigen Tagen habe ich den einstieg in MFc Anwendungen gewagt. Habe so einiges gelernt und scheint auch nicht soo schwer zu sein wie auf dem ersten Blick angenommen. Nun aber habe ich nen kleines Problem und zwar möchte ich an einer bestimmten Position einen einfach Text ausgeben.Dazu habe ich folgende Funktionen gefunden:

Code:
DrawText(...)
TextOur(..)

Doch erwarten diese alle einen LPstr, den ich leider nur über die Ressourcen definieren konnte. Hab schon einiges probiert, doch nicht führte zum gewünschten ergebnis:

Code:
LPSTR text = "sadsadasdsa";
DrawText(hdc, (LPSTR)text , sizeof(text),NULL,NULL);

C:\CPP\GTPlaner\GTPlaner.cpp(84) : error C2664: 'DrawTextW' : cannot convert parameter 2 from 'char *' to 'const unsigned short *'

Gibt es nicht ne einfachere Methode einen Text auszugeben, ich will nur Mausposition zu test zwecken ausgeben lassen. cout wäre mir eignetlich am liebsten ;)
 
Hi,
die Funktion DrawText hat folgende Parameter
Code:
virtual int DrawText (LPCTSTR lpszString,int nCount,LPRECT lpRect,UINT nFormat );

int DrawText(const CString& str,LPRECT lpRect,UINT nFormat );

und die Funktion TextOut folgende
Code:
BOOL TextOut(
  HDC hdc,           // handle to DC
  int nXStart,       // x-coordinate of starting position
  int nYStart,       // y-coordinate of starting position
  LPCTSTR lpString,  // character string
  int cbString       // number of characters
);
wobei die Funktion TextOut für Konsolen-Anwendungen geeignet ist, die Funktion DrawText besser in SDI- oder MDI-Anwendungen angewendet wird.
In deinem Aufruf hast du die Parameter beider Funktionen durcheinandergebracht. Schau mal in der MSDN unter den beiden Funktionen nach, da wird das noch genauer beschrieben.

Mfg

langer
 
Zurück