CEdit ES_LEFT -> nicht links?

DJneu

Mitglied
Hallo zusammen,

ich hab ein eigenartiges Problem!

Ich erzeuge ein CEdit mit :

CEdit *tempControl = new CEdit ;
tempControl ->Create (ES_LEFT | WM_CTLCOLOR | WS_CHILD | WS_VISIBLE, CRect (35, 30, 155, 49), this. paraText) ;
tempControl -> SetWindowText (tempString) ;
tempControl -> ModyfyStyleEx (0, WS_EX_CLIENTEDGE, SWP_DRAWFRAME) ;
tempControl -> SetFont (&m_Font, TRUE) ;

wobei

CFont m_Font ;
m_Font.CreatePointFont (85, "Arial") ;

um die Schriftgröße zu ändern und in ONCtlColor

CBrush m_BrushText ;
m_BrushText.CreateSolidBrush (RGB (180, 190, 200)) ;

für die Farbe des Feldes gesetzt wird.

Nun habe ich mehrere Felder untereinander stehen und
möchte den Text bündig links haben, tut es aber nicht!
Er ist schon links orientiert aber nicht gleichmäßig von der linken seite weg
Wo hebt es denn

Gruß Dirk
 
DJneu hat gesagt.:
Er ist schon links orientiert aber nicht gleichmäßig von der linken seite weg
Hast Du unterschiedliche Abstände des ersten Zeichens zum linken Rand (evt. Leerzeichen am Anfang)? Der Style "ES_LEFT" ist jedenfalls ok für's linksbündiges Ausrichten. Vielleicht kannt du ja mal einen Screenshot anhängen, damit man sieht, was du meinst.

Gruß
MCoder
 
Screenshot.JPG

Hier ist der Screenshot......
Die Texte die in Caption stehen sollten eigentlich linksbündig sein!
Das zweite Problem ist das alles in Kleinbuchstaben konvertiert wird!!

Wenn man sich als Debug das Textarray anschaut ist kein leerzeichen drin und groß- kleinschrift ist dort auch noch vorhanden!

Gruß
 
Wirf mal das " WM_CTLCOLOR" aus dem Create()-Aufruf heraus. Das ist kein Style für ein Edit-Feld und sorgt möglicherweise für die etwas seltsamen Effekte.

Gruß
MCoder
 
Zurück