Multiplicação com Saída em Arquivo

#if defined(UNICODE) && !defined(_UNICODE)
#define _UNICODE
#elif defined(_UNICODE) && !defined(UNICODE)
#define UNICODE
#endif
#include <tchar.h>
#include <windows.h>
#include <math.h>
#include <stdio.h>
#define ID_BUTTON 1
static HWND num1, num2, t;
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
void addMenus(HWND);
HMENU eMenu;
TCHAR szClassName[ ] = _T("CodeBlocksWindowsApp");
int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nCmdShow)
{
HWND hwnd; /** Evento de Janela */
MSG messages; /*Here messages to the application are saved*/
WNDCLASSEX wincl; /** Dados e struturas para Classe de Janela */
/* The Window structure */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;
wincl.style = CS_DBLCLKS; /** Catch double-clicks */
wincl.cbSize = sizeof (WNDCLASSEX);
/* Use default icon and mouse-pointer */
wincl.hIcon = LoadIcon (NULL, IDI_EXCLAMATION);
wincl.hIconSm = LoadIcon (NULL, IDI_EXCLAMATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL;
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0; /**Estrutura ou Instancia da Janela*/
wincl.hbrBackground = GetSysColorBrush(COLOR_3DFACE);
if (!RegisterClassEx (&wincl))
return 0;
hwnd = CreateWindowEx (
0, /* Extended possibilites for variation */
szClassName, /** Nome da Classe */
_T("Linguagem C com PHP"), /* Title Text */
WS_OVERLAPPEDWINDOW, /* default window */
CW_USEDEFAULT, /* Windows decides the position */
CW_USEDEFAULT, /*where the window ends up on the screen*/
500, /** Largura do Programa */
200, /** Altura em pixels */
HWND_DESKTOP, /*The window is a child-window to desktop*/
NULL, /* No menu */
hThisInstance, /* Program Instance handler */
NULL /** Nenhum dado de Criação da janela */
);
ShowWindow (hwnd, nCmdShow);
while (GetMessage (&messages, NULL, 0, 0)) {
TranslateMessage(&messages);
DispatchMessage (&messages);
}
return messages.wParam;
}
LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message,
WPARAM wParam, LPARAM lParam) {
switch (message) {
case WM_CREATE:
addMenus(hwnd);
CreateWindow(
TEXT("static"), TEXT("Linguagem C/C++ com PHP:"), WS_VISIBLE | WS_CHILD,
30, 20, 480, 20,
hwnd, NULL, NULL, NULL
);
num1 = CreateWindow( /**Aqui está variável num1 para entrada de dados*/
TEXT("edit"), TEXT(""), WS_VISIBLE | WS_CHILD | WS_BORDER,
30, 50, 80, 20,
hwnd, NULL, NULL, NULL
);
num2 = CreateWindow( /**Aqui está variável num2 para entrada de dados*/
TEXT("edit"), TEXT(""), WS_VISIBLE | WS_CHILD | WS_BORDER,
120, 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
);
CreateWindow(
TEXT("static"), TEXT("----Multiplicação----"),
WS_VISIBLE | WS_CHILD,
30, 90, 280, 20,
hwnd, NULL, NULL, NULL
);
t = CreateWindow( /**t é a caixa de texto vazia do lado do botão*/
TEXT("edit"), TEXT(""), WS_VISIBLE | WS_CHILD | WS_BORDER,
320, 50, 80, 20,
hwnd, NULL, NULL, NULL
);
break;
case WM_COMMAND:
if(LOWORD(wParam)==ID_BUTTON) {
int n1 = GetWindowTextLength(num1)+1; /**Captura a variável num1*/
int n2 = GetWindowTextLength(num2)+1; /**Captura a variável num2*/
static char t1[40]; /**Array de caracter t1 em modo estático*/
static char t2[40]; /**Array de caracter t2 em modo estático*/
GetWindowText(num1, t1, n1); /**Jogo n1 para dentro da variável t1*/
GetWindowText(num2, t2, n2); /**Jogo n2 para dentro da variável t2*/
int res = atoi(t1)*atoi(t2); /**Agora mudar para multiplicação*/
char tam[40]; /**Declaro a variável tam(tamanho) do tipo array de 40 caracteres*/
itoa(res, tam, 10); /**Converte res(resultado) para String tam(tamanho)*/
SetWindowText(t, tam); /**Jogo a vaiável tam(tamanho) para t(text)*/
FILE *arq;
arq=fopen("C:\\xampp\\htdocs\\dashboard\\Arquivos\\TESTE.txt", "w+");
fwrite(tam, sizeof(arq), 10, arq);
fclose(arq);
return 0;
}
break;
case WM_DESTROY:
PostQuitMessage(0); /** SaÃda padrão do Sistema */
break;
default: /**for messages that we don't deal with*/
return DefWindowProc (hwnd, message, wParam, lParam);
}
return 0;
}
void addMenus(HWND hwnd) {
eMenu = CreateMenu();
HMENU sub = CreateMenu();
AppendMenu(sub, MF_STRING, NULL, "Copy");
AppendMenu(sub, MF_STRING, NULL, "Paste");
AppendMenu(eMenu, MF_STRING, 0, "Arquivo");
AppendMenu(eMenu, MF_STRING, NULL, "Editar");
AppendMenu(eMenu, MF_POPUP, (UINT_PTR) sub, "SubMenu");
AppendMenu(eMenu, MF_STRING, 3, "Iniciar");
SetMenu(hwnd, eMenu);
}
Comentários
Postar um comentário