Cambiar BackColor
La pregunta es sencilla
¿Sabe alguien como cambiar el backcolor de un control que no tiene la propiedad Backcolor?
Os cuento mi problema :
Tengo un control (TxStatusBar que pertenece al TXControl) que no posee la propiedad BackColor, por necesiades de apariencia en mi aplicación debo cambiar el color de fondo de este control y algunos más, el código que utilizo para esto es:
'Objeto para colores sólidos
mBrush = CreateSolidBrush(&HFF)
'Pintar status bar
MIHDC = GetDC(MiControl.hwnd)
nOldBrush = SelectObject(MIHDC, mBrush2)
ExtFloodFill MIHDC, 1, 1, GetPixel(MIHDC, 1, 1), 1
ExtFloodFill MIHDC, MiControl.Width / 2, MiControl.Height / 2, GetPixel(MIHDC, MiControl.Width / 2, MiControl.Height / 2), 1
SelectObject MIHDC, nOldBrush
ReleaseDC MiControl.hwnd, MIHDC
DeleteObject mBrush
Todo funciona bien hasta que decibo minimizar mi formulario o mostrar otro formulario delante del mío, en estos casos se restaura el BackColor original del control.
Sabe alguien como hacer que esto no suceda?
Gracias
¿Sabe alguien como cambiar el backcolor de un control que no tiene la propiedad Backcolor?
Os cuento mi problema :
Tengo un control (TxStatusBar que pertenece al TXControl) que no posee la propiedad BackColor, por necesiades de apariencia en mi aplicación debo cambiar el color de fondo de este control y algunos más, el código que utilizo para esto es:
'Objeto para colores sólidos
mBrush = CreateSolidBrush(&HFF)
'Pintar status bar
MIHDC = GetDC(MiControl.hwnd)
nOldBrush = SelectObject(MIHDC, mBrush2)
ExtFloodFill MIHDC, 1, 1, GetPixel(MIHDC, 1, 1), 1
ExtFloodFill MIHDC, MiControl.Width / 2, MiControl.Height / 2, GetPixel(MIHDC, MiControl.Width / 2, MiControl.Height / 2), 1
SelectObject MIHDC, nOldBrush
ReleaseDC MiControl.hwnd, MIHDC
DeleteObject mBrush
Todo funciona bien hasta que decibo minimizar mi formulario o mostrar otro formulario delante del mío, en estos casos se restaura el BackColor original del control.
Sabe alguien como hacer que esto no suceda?
Gracias