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