
08/02/2006, 17:10
|
| | Fecha de Ingreso: diciembre-2004 Ubicación: Iquique, Chile
Mensajes: 150
Antigüedad: 20 años, 6 meses Puntos: 0 | |
Color en Controles Holas;
Estaba programando Cuadros de Diálogos, a los controles Edit y Radio Button,
les cambiaba el background y color de la fuente, ningún problema.
Ahora estaba programando ventanas sin recurrir a recursos, ahora no puedo hacer que se modifique
los colores de los controles, ejemplo;
Código:
#include <windows.h>
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
HINSTANCE inst;
/*-----------------------*/
#define CB_OCULTAR 10
#define RB_RADIO_1 11
#define RB_RADIO_2 12
#define BG_GRUPO 13
#define RB_RADIO_3 14
#define RB_RADIO_4 15
//-----
#define EstiloRadios WS_CHILD | WS_VISIBLE |BS_AUTORADIOBUTTON
#define EstiloGrupos WS_CHILD | WS_VISIBLE | BS_GROUPBOX | WS_GROUP
#define EstiloEdit WS_CHILD | WS_VISIBLE | WS_BORDER
//
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND hedit,hboton,hradio_1,hradio_2;
static HWND hgrupo;
static HWND hradio_3,hradio_4;
int optar = 11;
//--- COLOR BACKGROUND CONTROLES
static HBRUSH RadioBrush;
static COLORREF BkRadioColor;
static COLORREF TextoRadio;
Código:
switch (message)
{
case WM_CREATE:
hgrupo = CreateWindow(
"button","OPciones",
EstiloGrupos, 15,70,150,80,
hwnd,(HMENU)BG_GRUPO,
inst,NULL
);
hradio_1 = CreateWindow(
"Button","Marcar",
EstiloRadios, 30,88,60,20,
hwnd,(HMENU)RB_RADIO_1,
inst,NULL
);
....etc...
hradio_4 = CreateWindow(
"button","Marca 4",
EstiloRadios, 30,192,70,20,
hwnd,(HMENU)RB_RADIO_4,
inst, NULL
);
//---------
TextoRadio = RGB(0,0,254);
BkRadioColor = RGB(225,225,225);
RadioBrush = CreateSolidBrush(BkRadioColor);
break;
case WM_CTLCOLORBTN:
if((HWND)lParam == (HWND)RB_RADIO_4)
{
SetTextColor((HDC)wParam,TextoRadio);
SetBkColor((HDC)wParam,BkRadioColor);
return (LONG)RadioBrush;
}
break;
Código:
case WM_DESTROY:
DeleteObject(RadioBrush);
PostQuitMessage (0);
break;
No se que estoy haciendo mal, gracias.
Nos vemos. |