Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[C++]Criando sua primeira Win32 Application


AceStryker
 Compartilhar

Posts Recomendados

Introdução

 

Primeiro de tudo, vocês que já estão comentando que meu tópico já existe e mostrando o link do lipinf, devo dizer que este é diferente pois mostra como usar objetos e usufruir de seus eventos, espero que gostem...

Eu estarei usando o IDE Dev C++ que podemos encontrar o link no final do tópico.

 

Principais APIs

 

Precisaremos saber como funciona algumas APIs do windows e eu farei o possível para explicar como elas funcionam para vocês...

 

CreateWindowExA()

Esta API é umas das principais do nosso tutorial, é com ela que criamos o formulário em si e todos os seus objetos, aqui esta como é sua estrutura segundo o MSDN

HWND CreateWindowEx(

DWORD dwExStyle,

LPCTSTR lpClassName,

LPCTSTR lpWindowName,

DWORD dwStyle,

int x,

int y,

int nWidth,

int nHeight,

HWND hWndParent,

HMENU hMenu,

HINSTANCE hInstance,

LPVOID lpParam

);

 

Para mais informações:

É necessário se cadastrar para acessar o conteúdo.

 

SendMessageA

 

Como na maioria dos IDEs de C++ não possuem bibliotecas ligadas a os objetos(ex: Edit1.text) teremos que manuzear tudo por WindowsMessages, e é com esta função que faremos isto.Aqui esta sua estrutura:

LRESULT WINAPI SendMessage(

__in HWND hWnd,

__in UINT Msg,

__in WPARAM wParam,

__in LPARAM lParam

);

 

Para mais informações:

É necessário se cadastrar para acessar o conteúdo.

 

Mãos a obra!

 

Abra o DevC++ e faça o que fiz nessa imagem

 

91702837.png

 

22459098.png

 

Bom, o seu programa deve estar cheio de comentários em inglês mas no meu tutorial não vai te-los.

 

Vamos estudar primeiro estudar as partes importantes deste código(ele só cria o form vázio)

 

  • A função WinMain é responsável por criar o form e seus objetos
  • WNDCLASSEX é a classe da janela a ser criada
  • Na parte wincl.lpfnWndProc = WindowProcedure estamos especificando que a função de CALLBACK do programa (esta controlará todas as mensagens(WindowsMessages))
     
     
  • É necessário se cadastrar para acessar o conteúdo.


     
    Esta função é a responsável pela criação em si do form, nesta esta especificando o tamanho, o título(Windows App) e tudo mais, então vamos editar este título para "Minha primeira aplicação de Win32" e o tamanho para 400x100, a função ficará assim:

    É necessário se cadastrar para acessar o conteúdo.


 

Agora vamos adicionar nossos componentes:

Em baixo de char szClassName[ ] = "WindowsApp"; digite:

É necessário se cadastrar para acessar o conteúdo.

 

Agora em cima de ShowWindow (hwnd, nFunsterStil); adicione:

 

É necessário se cadastrar para acessar o conteúdo.

 

Agora a parte boa, vamos mexer nos eventos, dessa até a WindowProcedure(), estará assim:

 

É necessário se cadastrar para acessar o conteúdo.

 

Este WM_DESTROY é a WindowsMessage que se é chamado quando o usuário pede para fechar o programa, por isso a ação de fechar o programa(a vá)

 

Os eventos de objetos ficam na WindowsMessage chamada WM_COMMAND, então devemos adiciona-la:

 

É necessário se cadastrar para acessar o conteúdo.

 

Aqui ficarão nossas ações, então vamos começar a realmente programar, este evento é muito simples, apenas iremos pegar o texto do EDIT e modificar o texto da label para ele, nada de mais...

É necessário se cadastrar para acessar o conteúdo.

 

Bem simples né?Mas já da para ter uma noção...O código inteiro ficará assim:

 

É necessário se cadastrar para acessar o conteúdo.

 

Downloads

É necessário se cadastrar para acessar o conteúdo.

 

É necessário se cadastrar para acessar o conteúdo.

É necessário se cadastrar para acessar o conteúdo.

 

Créditos: 100% AceStryker

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

todos os tutoriais que agente encontra sobre a classe windows.h sao sempre assim, so explicam essa mesma maldita janela, sempre sempre sempre, nunca dao continuidade ao bendito tutorial e a maioria dos tutoriais nem explicam direito que é cada coisa, voce que tem que procurar separadamente o que sao cada coisa.

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.