[C con Clase] Control EDIT

DAMP damp29yw en gmail.com
Dom Ago 26 16:04:38 CEST 2007


Carlos muchas gracias peor no me funciono.

El día 25/08/07, Carlos Oyarzo <harry848 en hotmail.com> escribió:
>
> DAMP....
>
> prueba por esto:
>
> ---------------------------------------------------------------------------------------------------------------------------------------
>
> #include <windows.h>
>
> #include "IDS.h"
>
> /*  Declaración del procedimiento de ventana  */
> LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
> BOOL CALLBACK DlgProc(HWND, UINT, WPARAM, LPARAM);
>
>
> typedef struct stDatos {
>        char Numero [100];
>
>
> } DATOS;
>
> int WINAPI WinMain (HINSTANCE hThisInstance,
>                    HINSTANCE hPrevInstance,
>                    LPSTR lpszArgument,
>                    int nFunsterStil)
> {
>    HWND hwnd;               /* Manipulador de ventana */
>    MSG mensaje;             /* Mensajes recibidos por la aplicación */
>    WNDCLASSEX wincl;        /* Estructura de datos para la clase de
> ventana
> */
>
>    /* Estructura de la ventana */
>    wincl.hInstance = hThisInstance;
>    wincl.lpszClassName = "NUESTRA_CLASE";
>    wincl.lpfnWndProc = WindowProcedure;      /* Esta función es invocada
> por Windows */
>    wincl.style = CS_DBLCLKS;                 /* Captura los doble-clicks
> */
>    wincl.cbSize = sizeof (WNDCLASSEX);
>
>    /* Usar icono y puntero por defector */
>    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
>    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
>    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
>    wincl.lpszMenuName = MAKEINTRESOURCE(ID_menu);
>    wincl.cbClsExtra = 0;                      /* Sin información adicional
> para la */
>    wincl.cbWndExtra = 0;                      /* clase o la ventana */
>    /* Usar el color de fondo por defecto para la ventana */
>    wincl.hbrBackground = GetSysColorBrush(COLOR_BACKGROUND);
>
>    /* Registrar la clase de ventana, si falla, salir del programa */
>    if(!RegisterClassEx(&wincl)) return 0;
>
>    /* La clase está registrada, crear la ventana */
>    hwnd = CreateWindowEx(
>           0,                   /* Posibilidades de variación */
>           "NUESTRA_CLASE",     /* Nombre de la clase */
>           TEXT("Sistemas Expertos"),     /* Texto del título */
>           WS_OVERLAPPEDWINDOW, /* Tipo por defecto */
>           CW_USEDEFAULT,       /* Windows decide la posición */
>           CW_USEDEFAULT,       /* donde se coloca la ventana */
>           544,                 /* Ancho */
>           375,                 /* Alto en pixels */
>           HWND_DESKTOP,        /* La ventana es hija del escritorio */
>           NULL,                /* Sin menú */
>           hThisInstance,       /* Manipulador de instancia */
>           NULL                 /* No hay datos de creación de ventana */
>    );
>
>    /* Mostrar la ventana */
>    ShowWindow(hwnd, SW_SHOWDEFAULT);
>
>    /* Bucle de mensajes, se ejecuta hasta que haya error o GetMessage
> devuelva FALSE */
>    while(TRUE == GetMessage(&mensaje, NULL, 0, 0))
>    {
>        /* Traducir mensajes de teclas virtuales a mensajes de caracteres
> */
>        TranslateMessage(&mensaje);
>        /* Enviar mensaje al procedimiento de ventana */
>        DispatchMessage(&mensaje);
>    }
>
>    /* Salir con valor de retorno */
>    return mensaje.wParam;
> }
>
>
> /*  Esta función es invocada por la función DispatchMessage()  */
> LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT msg, WPARAM wParam,
> LPARAM
> lParam)
> {
>    static HINSTANCE hInstance;
>    static DATOS Datos;
>
>    switch (msg)                  /* manipulador del mensaje */
>    {
>        case WM_CREATE:
>           hInstance = ((LPCREATESTRUCT)lParam)->hInstance;
>                   /* Inicialización de los datos de la aplicación */
>                   //strcpy(Datos.Texto, "Inicial");
>           return 0;
>           break;
>
>        case WM_COMMAND:
>                        /*if(LOWORD(wParam) == CM_LEER)
>              DialogBoxParam(hInstance, "", hwnd, DlgProc, (LPARAM)&Datos);
>                        else
>                                PostQuitMessage(0);
>                                break;*/
>           switch(LOWORD(wParam)) {
>              case CM_LEER:
>                 DialogBoxParam(hInstance, MAKEINTRESOURCE(ID_dlg1), hwnd,
> DlgProc, (LPARAM)&Datos);
>                 break;
>              case CM_SALIR:
>                                  PostQuitMessage(0);
>                 break;
>           }
>
>        case WM_DESTROY:
>           PostQuitMessage(0);    /* envía un mensaje WM_QUIT a la cola de
> mensajes */
>           break;
>        default:                  /* para los mensajes de los que no nos
> ocupamos */
>           return DefWindowProc(hwnd, msg, wParam, lParam);
>    }
>    return 0;
> }
>
> BOOL CALLBACK DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
> {
>   static DATOS *datos;
>   float numero;
>
>    switch (msg)                  /* manipulador del mensaje */
>    {
>        case WM_INITDIALOG:
>           datos = (DATOS *)lParam;
>                   SetFocus(GetDlgItem(hDlg, ID_NUMERO));
>           return TRUE;
>        case WM_COMMAND:
>         switch(LOWORD(wParam)) {
>                 case IDOK:
>
>                GetWindowText(GetDlgItem(hDlg, ID_NUMERO),datos->Numero,
> 100);
>                 numero= atof(datos->Numero);
>
>                if((numero<0.5f)&&(numero>0.1f))
>                {
>
>                MessageBox(hDlg,TEXT("funciona"),TEXT("sistemas
> expertos"),MB_OK   );
>                SetFocus(GetDlgItem(hDlg, ID_LISTA));
>
>                }
>                        else
>                {
>                //PostQuitMessage(0);
>                }
>                        break;
>                 case IDCANCEL:
>                         EndDialog(hDlg, FALSE);
>                        break;
>                }
>
>        return TRUE;
>    }
>    return FALSE;
> }
>
>
> -------------------------------------------------------------------------------------------------------------------------------
>
> Espero que te sirva. Cuenta si algo no te funcionó.
> Salu2.
>
>
>
>
>
>
>
> *****************************************************************************
>
>
> >From: DAMP <damp29yw en gmail.com>
> >Reply-To: Lista de correo sobre C y C++ <cconclase en listas.conclase.net>
> >To: "Lista de correo sobre C y C++" <cconclase en listas.conclase.net>
> >Subject: Re: [C con Clase] Control EDIT
> >Date: Fri, 24 Aug 2007 21:58:33 -0500
> >
> >Carlos muchas gracias, pero he hecho lo que me dijiste y no logro
> >sulucionar
> >el problema; te envio todo el codigo a ver en que me puedes colaborar.
> >gracias.
> >
> >Muchas gracias.
> >
> >
> >El día 24/08/07, Carlos Oyarzo <harry848 en hotmail.com> escribió:
> > >
> > > hola damp, por el poco codigo que envias, solo puedo
> > > decirte que quizas el error está en el if():
> > >
> > > if((numero<0,5)&&(numero>0,1))
> > >
> > > deberia ser if( (numero<0.5f) && (numero>0.1f) )
> > >
> > > Espero que te sirva
> > > Salu2
> > >
> > >
> > > >From: DAMP <damp29yw en gmail.com>
> > > >Reply-To: Lista de correo sobre C y C++ <
> cconclase en listas.conclase.net>
> > > >To: cconclase en listas.conclase.net
> > > >Subject: [C con Clase] Control EDIT
> > > >Date: Thu, 23 Aug 2007 22:14:44 -0500
> > > >
> > > >Cordial saludo amigos.
> > > >
> > > >amigos tengo un inconvenite con un algoritmo.
> > > >ncesito capturar un float desde el control EDIT, hasta donde tengo
> > > >entendido
> > > >lo que se captura del control EDIT es un char y necesito convertirlo
> en
> > > un
> > > >float, eso lo hago con atoif, y esa variable float la pongo en un if
> >para
> > > >indicar un rango de que ese numeor float sea menor que 0.5 y mayor
> que
> > > 0.1
> > > >y
> > > >si es asi me muestre un mensaje, pero que sino esa dentro del rango
> >haga
> > > >otra cosa. mi problema es que cualquier numero que ingreso
> >supuestamente
> > > >esta dentro de ese rango, por ejemplo ingreso 10 y me acepta que esta
> > > >dentro
> > > >de ese rango y eso no deberia ser.
> > > >el codigo q tengo es el siguiente:
> > > >
> > > >
> > > >char entrada[100];
> > > >
> > > >float numero;
> > > >
> > > >GetWindowText(GetDlgItem(hDlg, ID_NUMERO), entrada, 10);
> > > >
> > > >numero= atof(entrada);
> > > >
> > > >if((numero<0,5)&&(numero>0,1))
> > > >
> > > >{
> > > >
> > > >MessageBox(hDlg,TEXT("funciona"),TEXT("sistemas expertos"),MB_OK );
> > > >
> > > >}
> > > >
> > > >else
> > > >
> > > >{
> > > >
> > > >PostQuitMessage(0);
> > > >
> > > >}
> > > >ojala que me puedan colaborar porque soy muy nuevo en este ambiente y
> > > >realmente no entiendo que pasa.
> > > >Muchas gracias.
> > > >--
> > > >D.A.M.P
> > >
> > >
> > > >_______________________________________________
> > > >Lista de correo Cconclase Cconclase en listas.conclase.net
> > >
> > >
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> > > >Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
> > >
> > > _________________________________________________________________
> > > MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
> > >
> > >
> > > _______________________________________________
> > > Lista de correo Cconclase Cconclase en listas.conclase.net
> > >
> >http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> > > Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
> > >
> >
> >
> >
> >--
> >D.A.M.P
>
>
> ><< win004.c >>
>
>
> ><< ids.h >>
>
>
> ><< win004.rc >>
>
>
> >_______________________________________________
> >Lista de correo Cconclase Cconclase en listas.conclase.net
> >http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> >Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
> _________________________________________________________________
> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>



-- 
D.A.M.P
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070826/2bd56e94/attachment.html>


Más información sobre la lista de distribución Cconclase