Ir para conteúdo
Fórum Script Brasil

BraulioChaves

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre BraulioChaves

BraulioChaves's Achievements

0

Reputação

  1. Olá pessoal, venho aqui pedir a ajuda de vocês em uma questão com uma variável do tipo char, é o seguinte, tenho um formulário win32 com um botão que quando você clica nesse botão é aberto outra janela, que contém um edit, um botão para fechar e voltar a janela principal, um botão pra pegar os dados do edit e gravar em um arquivo de texto comum, o problema é que quando eu gravo algo acontece como o esperado, mas se eu FECHAR a janela e voltar para a janela principal e clicar novamente no botão para abrir a segunda janela e for tentar gravar algo, não vai gravar os dados, é como se a variável não se limpasse, continuasse os dados antigos.. abaixo o code: #include <windows.h> #include <string> #include <fstream> #include <iostream> #include <stdlib.h> #include <stdio.h> #include <sstream> #define className "Class" LRESULT CALLBACK WinProc(HWND window,UINT msg, WPARAM WParam,LPARAM LParam); HINSTANCE g_inst; // Interagindo com o usuário HWND Botao1; HWND hwnd; HWND Botao2; HWND EditNum1; HWND option; HFONT Minhaletra; HWND BotaoFechar; // Identificando os Botões #define ID_BOTAO1 1001 #define IDC_BOTAO2 1003 #define IDC_BOTAOFECHAR 1004 // Sistema char frase[100]="0"; using namespace std; int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR IpCmdLine,int nCmdShow){ WNDCLASSEX win; MSG message; win.cbClsExtra = 0; win.cbSize=sizeof(win); win.cbWndExtra = 0; win.hbrBackground = CreateSolidBrush(RGB(217,83,83)); win.hCursor = LoadCursor(NULL,IDC_ARROW); win.hIcon = LoadIcon(NULL,IDI_WARNING); win.hIconSm = LoadIcon(NULL,IDI_WINLOGO); win.hInstance = hPrevInstance; win.lpfnWndProc = WinProc; win.lpszClassName = className; win.lpszMenuName = NULL; win.style = 0; if(!RegisterClassEx(&win)) return 0; hwnd = CreateWindowEx(0,className,"Formulário",WS_SIZEBOX | WS_TILED | WS_CAPTION | WS_SYSMENU, 300,200,700,430,NULL,NULL,hInstance,NULL); option = CreateWindowEx(0,className,"a",WS_SIZEBOX | WS_TILED | WS_CAPTION, 450,350,350,200,0,0,hInstance,0); if(hwnd == NULL) return 0; ShowWindow(hwnd,SW_SHOW); UpdateWindow(hwnd); while(GetMessage(&message,0,0,0)){ TranslateMessage(&message); DispatchMessage(&message); } return message.wParam; } LRESULT CALLBACK WinProc(HWND window,UINT msg, WPARAM wParam,LPARAM lParam) { switch(msg){ case WM_CREATE: Botao1 = CreateWindowEx(WS_EX_STATICEDGE,"BUTTON","Inverter",WS_VISIBLE | WS_CHILD,300,12,75,20,hwnd,(HMENU)ID_BOTAO1,g_inst,NULL); break; case WM_CLOSE: DestroyWindow(window); break; case WM_DESTROY: PostQuitMessage(0); break; case WM_COMMAND: switch(LOWORD(wParam)){ case ID_BOTAO1:{ // MessageBox(NULL,frase,frase,MB_OK); HINSTANCE g_inst1; EditNum1= CreateWindowEx(WS_EX_CLIENTEDGE,"EDIT","",WS_VISIBLE|WS_CHILD,12,142,320,20,option,NULL,g_inst1,NULL); Botao2 = CreateWindowEx(WS_EX_STATICEDGE,"BUTTON","Gravar",WS_VISIBLE | WS_CHILD,200,12,75,20,option,(HMENU)IDC_BOTAO2,g_inst1,NULL); BotaoFechar = CreateWindowEx(WS_EX_STATICEDGE,"BUTTON","FECHAR",WS_VISIBLE | WS_CHILD,100,12,75,20,option,(HMENU)IDC_BOTAOFECHAR,g_inst1,NULL); ShowWindow(option, SW_SHOW); } break; case IDC_BOTAOFECHAR: { ShowWindow(option, SW_HIDE); } break; case IDC_BOTAO2: { SendMessage((HWND)EditNum1,(UINT)EM_GETLINE,(WPARAM)1,(LPARAM) &frase); // sprintf(frase,"[basico]\nplayername =%s\ndirpath =%s\nrompath =%s",); ofstream myfile; myfile.open ("xsnes.ini"); myfile << frase; myfile.close(); MessageBox(NULL,frase,frase,MB_OK); // sprintf(frase,"."); // ShowWindow(option, SW_HIDE); } break; } break; default: return DefWindowProc(window, msg, wParam, lParam); } return 0; } Esse é só um code de teste que estou tentando resolver esse problema. Obrigado desde já.
×
×
  • Criar Novo...