Si estoy escribiendo en C y necesito interfaces de entrada y salida, ¿cómo puedo usar la API para lograrlo?
Después de agregar el siguiente código:
#include
#include
#include < string.h>
#include<.math.h>
#define pi 3.1415
LLAMADA DE RESULTADO WndProc(HWND,UINT,WPARAM,LPARAM); / /Descripción de la función de ventana
////////////// -------------------- Lo siguiente inicializa el clase de ventana-- ---------------//
int WINAPI WinMain(HINSTANCE hInstance,//Descripción de la función WinMain
HINSTANCE hPrevInst,
LPSTR lpszCmdLine,
int nCmdShow)
{
HWND hwnd;
MSG Msg; p>
WNDCLASS wndclass;
char lpszClassName[]="Ventana";//Nombre de clase de ventana
char lpszTitle[]="Programa de muestra de ventana";//Ventana Nombre del título p>
// Definición de clase de ventana
wndclass.style=0; // El tipo de ventana es el predeterminado
wndclass.lpfnWndProc=WndProc;// La función de procesamiento de ventana es WndProc
wndclass.cbClsExtra=0; //La clase de ventana no tiene extensión
wndclass.cbWndExtra=0 //La instancia de ventana no tiene extensión
wndclass.hInstance= hInstance; // Identificador de instancia actual
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);//Usa el icono predeterminado
wndclass.hCursor= LoadCursor(NULL,IDC_ARROW);// La ventana usa un cursor de flecha
wndclass .hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//El fondo de la ventana es blanco
wndclass.lpszMenuName =NULL;//No hay menú en la ventana
wndclass.lpszClassName=lpszClassName;//El nombre de la clase de ventana es "Ejemplo de ventana"
//-------- ----------- - siguiente registro de clase de ventana -------------
if(! RegisterClass(&wndclass))//Sonido de advertencia si se registra falla
{MessageBeep( 0);
devuelve FALSO;
}
p>
Operación CreateWindow
hwnd= CreateWindow(lpszClassName,//Nombre de clase de ventana
lpszTitle, //Nombre de título de la instancia de ventana
WS_OVERLAPPEDWINDOW, //El estilo de la ventana
CW_USEDEFAULT,CW_USEDEFAULT,//Las coordenadas de la esquina superior izquierda de la ventana
CW_USEDEFAULT,CW_USEDEFAULT,//La altura y el ancho de la ventana son valores predeterminados
<. p> NULL, //Esta ventana no tiene ventana principalNULL, //Esta ventana no tiene menú principal
hInstance, //La identificador actual de la aplicación
NULL); //no usar este valor
ShowWindow(hwnd,nCmdShow); //mostrar la ventana
UpdateWindow(hwnd); //dibuja el área de usuario
while(GetMessage(&Msg,NULL, 0,0)) //bucle de mensajes
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam; //return Msg.wParam; mensaje cuando el programa finaliza Sistema
}
//Funciones de ventana
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam, LPARAM lParam) p>
{
switch(iMessage)
{
//Agrega código de procesamiento de mensajes aquí
}
switch(iMessage)
{
case WM_DESTROY:
PostQuitMessage(0); //llama a la función Enviar mensaje WM_QUIT
predeterminado:
devuelve DefWindowProc(hWnd,iMessage,wParam,lParam);
}
devuelve 0;
}