Buenas,
Estoy probando con la creacion de componentes y me encuentro un fallo en el dibujado de un caption cuando se utiliza Drawstate.
El codigo que he usado en un principio es muy simple y se puede encontrar facilmente por google
Código:
if not Enabled then
DrawState(FCanvas.Handle, FCanvas.Brush.Handle, nil, Integer(Caption), 0,
Rect.Left,Rect.Top,Canvas.TextWidth(caption), canvas.TextHeight(caption),
0, 0, DST_PREFIXTEXT or DSS_DISABLED)
else
DrawText(FCanvas.Handle, PChar(Caption), - 1, Rect,
DT_WORDBREAK or DT_CENTER or DT_VCENTER);
DrawText funciona sin ningun problema, pero no puedo incluir DT_WORDBREAK en el Drawstate, incluso he llegado a poner a mano el TextHeight, pero nada.
Como puedo entonces representar correctamente el texto de forma deshabilitada y con varias lineas, de forma similar a DrawText.
Un saludo y gracias por las respuestas.