Baixe sua cópia do Arquivo de Códigos
Precisando de freelancer em JavaScript, AJAX, C, C++, Java, Delphi, PHP, C#, VB.NET, JSP, Servlets, JSF, etc? Fale comigo: osmar@arquivodecodigos.net
Você está aqui: Inicio -> Dicas e Truques -> C++ -> Criando sua primeira aplicação de interface gráfica usando C++ e WinAPI
2479 - Criando sua primeira aplicação de interface gráfica usando C++ e WinAPI
Esta dica foi visualizada 45642 vezes

Categoria: Win32 API (Windows API)
Sub-Categoria: Aplicativos e Outros [Veja dicas relacionadas]

Meu site é muito confuso mesmo. Se até agora não encontrou o que procura, experimente minha pesquisa interna abaixo. É provável que a resposta para a sua pergunta esteja em uma das mais de 5.000 páginas do site.
Pesquisa:




Compartilhe esta página com seus amigos no Facebook

Tópicos mais populares de C++


Criando sua primeira aplicação de interface gráfica usando C++ e WinAPI

Esta dica mostra o código completo para uma aplicação de interface gráfica usando C++ e a Win32 (WinAPI - Windows Programming Interface). Trata-se de uma janela simples, mas com todas as características presentes em todas as janelas das aplicações Windows: uma barra de títulos, o ícone e os botões de maximizar, minimizar e fechar.

Antes de executar o exemplo observe que este código contém o ponto inicial para a criação de qualquer aplicação gráfica em C++/WinAPI, a saber: A função de entrada WinMain, o laço de mensagens Message Loop, a função de callback Window Procedure e as técnicas de registrar e criar a janela.

Neste momento não discutimos os detalhes do código. Em outras dicas você encontrará análises mais aprofundadas de cada parte.

Este código foi escrito e testado no Dev-C++, mas, deve funcionar sem problemas em outros compiladores C++ para Windows. Assim, abra o Dev-C++, vá em File -> New -> Projec. Na aba Basic, selecione Console Application, dê um nome ao projeto e deixe a opção C++ Project marcada. Salve o projeto e inclua o código abaixo no arquivo .cpp principal:
#include <windows.h>

// define o nome da classe de janela
const char nomeJanela[] = "aCodigos";

// esta é a Window Procedure
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM 
  wParam, LPARAM lParam){
    switch(msg){
      case WM_CLOSE:
        DestroyWindow(hwnd);
        break;
      case WM_DESTROY:
        PostQuitMessage(0);
        break;
      default:
        return DefWindowProc(hwnd, msg, wParam, 
          lParam);
    }

  return 0;
}

// função de entrada da aplicação
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE 
    hPrevInstance, LPSTR lpCmdLine, int nCmdShow){
  WNDCLASSEX wc;
  HWND hwnd;
  MSG Msg;

  // vamos registrar a Window Class
  wc.cbSize = sizeof(WNDCLASSEX);
  wc.style = 0;
  wc.lpfnWndProc = WndProc;
  wc.cbClsExtra = 0;
  wc.cbWndExtra = 0;
  wc.hInstance = hInstance;
  wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
  wc.hCursor = LoadCursor(NULL, IDC_ARROW);
  wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
  wc.lpszMenuName = NULL;
  wc.lpszClassName = nomeJanela;
  wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION);

  if(!RegisterClassEx(&wc)){
    MessageBox(NULL, "Erro ao registrar a janela!",
      "Erro!", MB_ICONEXCLAMATION | MB_OK);
    return 0;
  }

  // cria a janela
  hwnd = CreateWindowEx(WS_EX_CLIENTEDGE, nomeJanela,
    "Minha primeira aplicação Win32",
    WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT,
    350, 200, NULL, NULL, hInstance, NULL);

  if(hwnd == NULL){
    MessageBox(NULL, "Erro ao criar a janela!",
      "Erro!", MB_ICONEXCLAMATION | MB_OK);
    return 0;
  }

  // mostra a janela
  ShowWindow(hwnd, nCmdShow);
  UpdateWindow(hwnd);

  // Este é o laço de mensagens (Message Loop)
  while(GetMessage(&Msg, NULL, 0, 0) > 0){
    TranslateMessage(&Msg);
    DispatchMessage(&Msg);
  }

  return Msg.wParam;
}
Pronto! Só compilar (geralmente F9 no Dev-C++), observar o resultado e estudar o código atentamente.
Baixe uma cópia de avaliação do Arquivo de Códigos
Gostou desta dica? Então vai gostar ainda mais do nosso software 3.700 Dicas & Truques de Programação. Quando puder, clique aqui e baixe uma cópia gratuíta por 15 dias. É livre de vírus, pop-ups e propagandas indesejáveis.
Sobre o autor:
Osmar J. SilvaOsmar J. Silva (dono deste site e de 99,99% de seu conteúdo)

Olá, muito obrigado por estar visualizando esta página do meu site. Sou programador freelancer nas linguagens e frameworks Java, C/C++, Delphi, C#, VB.NET, PHP, Python, Ruby, JSP, Servlets, JSF, JPA, Hibernate, e muitas outras. Entre em contato comigo caso esteja precisando de algum trecho de código não encontrado no site. Meu Skype é: osmar@recomende.com. Meus telefones são (62) 3261-7018 / 8185-0734 e meu e-mail é osmar@arquivodecodigos.net.
 
Digitando 2011 - O programa de digitação mais usado em todo o Brasil
Patrocinador oficial: O Digitando XE é um dos programas para a prática de digitação mais usados no Brasil. É o preferido das franquias DATA BYTE, Microlins, MICROCAMP e PREPARA. Faça o download e conheça-o você também. O Digitando é o único no Brasil que permite a execução de músicas e rítmos de bateria enquanto se pratica a digitação.
Veja mais Dicas & Truques na sub-categoria: Aplicativos e Outros
Veja mais Dicas & Truques de outras linguagens
Fechar
Osmar J. Silva - Criador do site Arquivo de CódigosVocê está precisando de freelancer para ajudá-lo em seus códigos JavaScript, Java, PHP, C#, C/C++ e outras linguagens?
Meu nome é Osmar J. Silva e atuo como freelancer desde 2001. Clique aqui e fale comigo por telefone, e-mail ou Skype.
AS Compressores Goiânia
Compressores Goiânia
Faculdade Delta - Goiânia-GO
Faculdade Delta - Goiânia-GO
Assinantes
Por favor, informe os dados abaixo para acessar sua conta:
Usuário:
Senha:
 
Esqueci minha senha
Quero criar uma conta
Veja mais Dicas & Truques de C++
 
Dicas e truques de Java
Dicas e truques de C++
Dicas e truques de Delphi
http://www.arquivodecodigos.net
2000 - 2013 - Todos os direitos reservados a Osmar J. Silva
Todo o conteúdo deste site, quando não devidamente observado, pertence a seus idealizadores e não
poderá ser usado para outras finalidades senão estudo e aprimoramento de técnicas de programação.

Posso copiar o conteúdo do site e colocar em meu site ou blog? Pode sim, desde que você coloque um link e referência
ao meu site. Caso não faça isso meu advogado fará todo o possível para deixar sua conta bancária com algumas centenas
de Reais a menos.

Fale Conosco: (62) 3261-7018 / (62) 8185-0734
E-Mail: suporte@recomende.com
MSN/Skype: osmar@recomende.com (só para negócios, por favor)
Perfil no LinkedIn: http://br.linkedin.com/pub/osmar-j-silva-silva/8/94a/630

Para me contratar como freelancer ligue: (062) 3261-7018 / (62) 8185-0734

Desenvolvedor Responsável: Osmar J. Silva
Clique para fechar este anúncio Baixe uma cópia gratuíta do Arquivo de Códigos Fechar