Páginas

terça-feira, 2 de dezembro de 2014

Criando editbox em C++!!!

Olá galera, mais uma vez venho a publicar mais um artigo interessante sobre a linguagem c++ com base na API Win32. Trata-se da criação de um controle básico, o "EditBox". Bom, para quem já está na linguagem a um certo tempo, deve conhecer essa funcionalidade da nossa veterana c++.. Que na verdade é uma caixa de texto criada dentro de uma janela, ela serve para vários fins, como para
texto, números e outras funções que veremos mais a frente. Agora vamos ao que interessa, siga o exemplo abaixo:

#include <windows.h> 

LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM); 
char szClassName[ ] = "WindowsApp"; 
int WINAPI WinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil) 

   HWND hwnd;        
   MSG messages; 
   WNDCLASSEX wincl;     
   wincl.hInstance = hThisInstance; 
   wincl.lpszClassName = 
   szClassName; 
   wincl.lpfnWndProc = 
   WindowProcedure;    
   wincl.style = CS_DBLCLKS; 
   wincl.cbSize = sizeof 
   (WNDCLASSEX); 
   wincl.hIcon = LoadIcon (NULL, 
   IDI_APPLICATION); 
   wincl.hIconSm = LoadIcon (NULL, 
   IDI_APPLICATION); 
   wincl.hCursor = LoadCursor 
   (NULL, IDC_ARROW); 
   wincl.lpszMenuName = NULL;  
   wincl.cbClsExtra = 0;            
   wincl.cbWndExtra = 0;            
   wincl.hbrBackground = (HBRUSH) 
   COLOR_BACKGROUND; 
   if (!RegisterClassEx (&wincl)) 
     return 0; 
   hwnd = CreateWindowEx ( 
      0,          
      szClassName,              
      "Botões",             
      WS_OVERLAPPEDWINDOW, 
      540,                        
      230,                       
      280,                       
      180,                       
      HWND_DESKTOP,          
      NULL,                    
      hThisInstance, 
      NULL                   
      ); 
   ShowWindow (hwnd, nFunsterStil); 
   while (GetMessage (&messages NULL, 0, 0)) 
   { 
     TranslateMessage(&messages); 
     DispatchMessage(&messages); 
   } 
   return messages.wParam; 
HWND caixaedit; 
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 

   switch (message)          
   { 
     case WM_CREATE: 
       { 
     caixaedit = CreateWindowEx ( 
       0, 
       "EDIT" 
       "Escreva aqui..." 
       WS_CHILD | WS_BORDER, 
       110, 
        30, 
        50, 
        35, 
        hwnd, 
        NULL, 
        g_inst, 
        NULL, 
        ); 
   
     case WM_DESTROY: 
       PostQuitMessage (0); 
       break; 
     default:            
       return DefWindowProc (hwnd,message, wParam, lParam); 
   } 
   return 0; 


Obs: Aconselho que quem ainda não entende as funções da linguagem, que revise e aprenda nos nossos posts anteriores: http://programadorgenio.blogspot.com.br/2013/07/criando-janela-basica-em-c.html?m=0 e http://programadorgenio.blogspot.com.br/2014/11/criando-botoes-em-c.html?m=0. Qualquer dúvida deixem nos comentários, valew e até a próxima!!!

Nenhum comentário:

Postar um comentário