main.html

#include <windows.h>
#include <stdlib.h>
#define ID_BUTTON 1
static HWND num1, ResSt, Lista;
LRESULT CALLBACK WinProc(HWND, UINT, WPARAM, LPARAM);
void addMenus(HWND);
HMENU MenuPrincipal;
int WINAPI WinMain(HINSTANCE hI, HINSTANCE hPI, PSTR szCL, int iCS) {
HWND hwnd;
MSG msg;
WNDCLASS wndclass;
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WinProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hI;
wndclass.hIcon = LoadIcon(hI, IDI_APPLICATION);
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
wndclass.hbrBackground = GetSysColorBrush(COLOR_3DFACE);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = "Janela";
if(!RegisterClass(&wndclass)) {
MessageBox(
NULL,
TEXT("Program requires Windows NT!"),
"Error",
MB_ICONERROR
);
return 0;
}
hwnd = CreateWindow(
"Janela",TEXT("Calculo do Somatorio em C"),WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 500, 220,
NULL, NULL, hI, NULL
);
ShowWindow (hwnd, iCS);
while(GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WinProc(HWND hwnd, UINT msg, WPARAM wP, LPARAM lP) {
int i;
TCHAR szBuffer[64];
switch(msg) {
case WM_CREATE:
addMenus(hwnd); num1 = CreateWindow(
TEXT("edit"), TEXT(""), WS_VISIBLE | WS_CHILD | WS_BORDER,
30, 50, 80, 20,
hwnd, NULL, NULL, NULL
);
CreateWindow(
TEXT("button"),TEXT("Calcular"),WS_VISIBLE|WS_CHILD|WS_BORDER,
220, 50, 80, 20,
hwnd, (HMENU) ID_BUTTON, NULL, NULL
);
ResSt = CreateWindow(
TEXT("edit"), TEXT(""), WS_VISIBLE | WS_CHILD | WS_BORDER,
320, 50, 80, 20,
hwnd, NULL, NULL, NULL
);
Lista = CreateWindow(
"combobox", NULL, WS_CHILD | WS_TABSTOP | WS_VISIBLE|
CBS_DROPDOWNLIST | CBS_SIMPLE | WS_VSCROLL | CBS_HASSTRINGS,
310, 90, 95, 250,
hwnd, NULL, NULL, NULL
);
for(i=1; i<=256 ; i++) {
wsprintf(szBuffer, "%dº = %c", i, i);
SendMessage(Lista, CB_ADDSTRING, wP, (LPARAM)szBuffer);
}
return 0;
case WM_COMMAND:
if(LOWORD(wP)==ID_BUTTON) {
unsigned long somatorio(int n) {
int i, x;
for(i=1, x=0; i<=n; i++) {
x = x+i;
}
return(x);
}
int n1 = GetWindowTextLength(num1)+1;
static char t1[40];
GetWindowText(num1, t1, n1);
int resultado, valor = atoi(t1);
resultado = somatorio(valor);
char tamanho[40];
itoa(resultado, tamanho, 10);
SetWindowText(ResSt, tamanho);
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd, msg, wP, lP);
}
return 0;
}
void addMenus(HWND hwnd) {
MenuPrincipal = CreateMenu();
AppendMenu(MenuPrincipal, MF_STRING, NULL, "Arquivo");
AppendMenu(MenuPrincipal, MF_STRING, NULL, "Editar");
AppendMenu(MenuPrincipal, MF_STRING, NULL, "Copiar");
AppendMenu(MenuPrincipal, MF_STRING, NULL, "Fechar");
SetMenu(hwnd, MenuPrincipal);
}
Comentários
Postar um comentário