C/Visual C - el programa mas simple, en una ventana....

 
Vista:

el programa mas simple, en una ventana....

Publicado por xj35u5x (63 intervenciones) el 11/10/2000 00:00:00
Quisiera que se me aclarasen algunas dudas....
Se pueden hacer programas windows con lenguaje c ?
me refiero a NO usar ++ (:-)

Ahora, me gustaría que alguien pusiera aquí el código del programa más simple, pero de tipo windows, o sea, no que se ejecute en una ventana ms-dos.
Un ejemplo sería un programa que dijera hola mundo, pero en una típica ventana windows, me gustaría que me dijeran que componentes se necesitan, para hacer esto en c y también en c++

xj35u5x
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:el programa mas simple, en una ventana....

Publicado por Cesar (11 intervenciones) el 11/10/2000 00:00:00
Hola!

Bueno, no es necesario usar objetos para programa en windows, aunque la verdad en algunas cosas (el gui) son esenciales. Existe gran diferencia en programacion para msdos y para windows, esta ultima esta orientada a eventos, por lo que te recomiendo que te pilles un libro o algun tutorial para empezar a programar. Yo aprendi con el libro de petzold, de lo mejorcito que hay.

Un saludo...

Cesar.

P.D.: El hola mundo ocupa unas 70 lineas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Hola Mundo

Publicado por Fabián Sierra Carvajal (50 intervenciones) el 11/10/2000 00:00:00
EN realidad, el sustrato básico es el C, no el C++. Sin embargo, los compiladores
que producen ejecutables para Windows son, en general, compiladores de
C++, por lo que parece que Windows debe ser programado en C++.
#include <windows.h>

LRESULT CALLBACK Mensajero_General(HWND ventana,UINT mensaje,WPARAM parametro1,LPARAM parametro2){
switch(mensaje){
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:return DefWindowProc(ventana,mensaje,parametro1,parametro2);
}
}


/* Registrar la ventana principal*/

ATOM Registrar_Ventana(HINSTANCE id_programa){
WNDCLASS ventana;
memset(&ventana,0,sizeof(WNDCLASS));
ventana.style=CS_HREDRAW | CS_VREDRAW;
ventana.lpfnWndProc=Mensajero_General;
ventana.cbClsExtra=0;
ventana.cbWndExtra=0;
ventana.hInstance=id_programa;
ventana.hIcon=LoadIcon(NULL,IDI_APPLICATION);
ventana.hCursor=LoadCursor(NULL,IDC_ARROW);
ventana.hbrBackground=(HBRUSH) COLOR_WINDOW;
ventana.lpszMenuName="MENU_PRINCIPAL";
ventana.lpszClassName="Ventana";
return RegisterClass(&ventana);
}




INT WINAPI WinMain(HINSTANCE id_programa, HINSTANCE id_anterior, LPSTR comandos, INT modo){
MSG mensaje;
ATOM id_ventana;
HWND ventana;


if(!(id_ventana=Registrar_Ventana(id_programa))){
return 1;
}

ventana=CreateWindow(MAKEINTATOM(id_ventana),"Hola Mundo",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
CW_USEDEFAULT,
0,
NULL,
NULL,
id_programa,
NULL);

if(!ventana){
return 1;
}

ShowWindow(ventana,modo);

while(GetMessage(&mensaje,NULL,0,0)){
TranslateMessage(&mensaje);
DispatchMessage(&mensaje);
}
return 0;
}

Está claro que necesitas un compilador compatible con Windows para compilarlo
y enlazarlo luego. Este fue probado en Borland C++ 5.0, y debe funcionar en
cualquier lado. Cualquier cosa, pregunta; los programas Windows no se entienden
mucho al principio. ¡Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar