Título: En que cabecera encuentro los #define ID_EJEMPLO de Windows.h? Publicado por: @XSStringManolo en 12 Junio 2019, 05:19 am Es para ver el listado de todas las opciones posibles e ir probándolas. En el codeblocks no me salen.
En visual studio me imagino que los nombres de las cabeceras serán parecidos. A ver si alguien me puede mirar o sabe donde los puedo encontrar. Estoy mirando en Codeblocks\MinGW\Include Encontré un ejemplo por google y lo estoy modificando para hacer mi programa mientras aprendo. Para hacer la gui a mi gusto más o menos le he dado la forma que me gustaría a cada ventana. Le añadi 2 edit box y las hice multilinea y que el enter salte de linea usando las flags correspondientes. Despues puse 2 botones. Uno para enviar texto y otro para separar los 2 editbox. En el ejemplo venian las macros de los ID_BUTTON e ID_EDIT definidos en el propio programa. Ahora mismo lo que quiero hacer es substituir un EDIT por un control que muestre texto plano para mostrar el resultado del cifrado. Estoy usando provisionalmente otro EDIT mientras no encuentro los #define ID_LOQUESEA 111 para poder saber todas las opciones disponibles y elegir la que me convezca y la correcta para ello. El mismo problema tengo con el boton que puse en el centro para hacer un separador entre los EDIT box para que quedase mejor. Si pudiese mirar los define buscaría algun borde adecuado para ello. Después solo me faltaría buscar como obtener el input en un string para aplicarle el cifrado. Y como mostrar el string en el control adecuado. Esto aún no lo miré porque estoy intentando hacer lo anterior de substituir el boton y el editbox por un borde y un texto estatico o algo así. Aquí dejo el código por si quereis compilarlo y ver la ventana para entender mejor lo que intento explicar. Sé que no estoy usando los handlers correctamente para los botones y los edit box, de momento ni lo cambie. Lo puse de cualquier manera para ir probando y moldeando la ventana sin distraerme con otras cosas. Cuando acabe el programa repasare el código línea por línea dejándolo mejor formateado comentado, etc. Código
Título: Re: En que cabecera encuentro los #define ID_EJEMPLO de Windows.h? Publicado por: RayR en 12 Junio 2019, 18:28 pm Creo que tienes una confusión. Estos #defines:
Código
no los vas a encontrar en ninguna cabecera. Esos los pone el programador, y sirven para identificar a cada control individual, no el tipo de control. Esto es un error: Código
Porque estás creando dos botones, y a ambos les pones el mismo identificador (ID_BUTTON). No vas a tener forma de distinguirlos al procesar sus mensajes. Debes hacer algo tipo: Código
O podrías poner nombres más significativos (ID_BUTTON_SALIR, etc.), y asignarles el valor que quieras, pero debe ser único para cada control. Al crear cada control, a CreateWindow le pasas el valor correspondiente. Lo que determina el tipo de control es el primer parámetro que le pasas a esta función ("Edit", "Button", etc.). Esos son los que debes buscar, pero no en una cabecera sino en la documentación. Por ejemplo, aquí tienes la de los Button: https://docs.microsoft.com/en-us/windows/desktop/controls/buttons y a la izquierda tienes un listado con otros. El nombre de la clase para pasar a CreateWindow suele ser el del control: "Button", "Edit", etc., o también puedes pasar una constante que identifica la clase del control: https://docs.microsoft.com/en-us/windows/desktop/controls/common-control-window-classes . Y fíjate que algunos tipos de controles en realidad son "subtipos" de un mismo control. Como en el link de Button que te puse; hay una sección "Button types" donde puedes ver que, por ejemplo, el checkbox es en realidad un Button con el estilo BS_CHECKBOX o BS_AUTOCHECKBOX. Título: Re: En que cabecera encuentro los #define ID_EJEMPLO de Windows.h? Publicado por: @XSStringManolo en 13 Junio 2019, 19:19 pm Sí, ya vi que lo que preguntaba no tenía mucho sentido. Disculpas. Ya encontré lo que buscaba acerca de eso y avance un poco el programa.
Prepararé el nuevo código para subirlo ya que me surjen varios problemas. Lo que me comentas de los botones ya lo sabía, pero no conocia el control static que era el que iba a usar en lugar del button. Uilizo los diversos handlers para trabajar con las ventanas. No creo que necesite diferenciar los controles quw eatoy usando de momento. Ya lo pondré todo correcto. Muchas gracias! En el nuevo código entre otras cosas tengo problemas para hacer un cast de un string que sé que solo tiene numeros a un int. U obtener directamente los numeros introducidos en el control edit como ints en vez de como texto. En un rato subo el código en un nuevo hilo, ya que los problemas son distintos. |