O Windows Forms permite que você crie aplicativos da área de trabalho visualmente, arrastando elementos da interface do usuário para uma tela. Esses elementos de interface do usuário incluem widgets como botões, painéis ou caixas de seleção.

Cada elemento da interface do usuário recebe determinados eventos. Por exemplo, você pode ter um evento de clique para botões, um evento alterado para caixas de seleção ou um evento de arrastar e soltar para painéis.

Os eventos usam manipuladores de eventos ou funções, que são executados apenas quando esse evento específico ocorre.

Tipos de eventos usados ​​para diferentes elementos de interface do usuário

Cada elemento da interface do usuário tem uma lista de eventos. Existem muitos cursos onde você pode aprender sobre importantes teorias e práticas de UX ou UI para ajudá-lo a decidir quais elementos de interface do usuário usar. Aqui estão alguns exemplos de eventos usados ​​por elementos de interface do usuário.

Eventos de tecla para baixo, tecla para cima ou pressionamento de tecla

instagram viewer

Elementos de interface do usuário que permitem ao usuário inserir texto, como uma caixa de texto, podem usar esses eventos. Esses eventos são acionados toda vez que o usuário pressiona uma tecla no teclado.

Eles podem ser úteis em cenários em que você tem a funcionalidade de pesquisa e pode ser necessário verificar constantemente qual é o valor da caixa de texto.

privadovaziotextBox1_KeyUp(remetente do objeto, KeyEventArgs e)
{
TextBox textbox = (TextBox) remetente;
string currentTextBoxValue = caixa de texto. Texto;
}

Carregar evento

O evento load ocorre quando o formulário ou um elemento da interface do usuário é renderizado na tela. Você pode usar esse evento quando desejar que uma funcionalidade específica ocorra no estágio de inicialização do formulário ou do controle.

Um cenário em que isso pode ser útil é se você deseja adicionar controles programaticamente ao formulário enquanto ele ainda está sendo carregado.

privadovazioForm1_Load(remetente do objeto, EventArgs e)
{
ToolTip toolTip1 = novo Dica de ferramenta();
toolTip1.AutoPopDelay = 5000;
toolTip1.InitialDelay = 1000;
toolTip1.ReshowDelay = 500;
toolTip1.ShowAlways = verdadeiro;
toolTip1.SetToolTip (this.button1, "Meu botão1");
toolTip1.Popup += isto.ToolTip1_Popup;
}

O evento pop-up de dica de ferramenta acontece quando você passa o mouse sobre um elemento de interface do usuário no aplicativo e uma dica de ferramenta é exibida. Os argumentos passados ​​para o manipulador de eventos permitem que você acesse dados sobre a dica de ferramenta, como seu texto ou tamanho.

privadovazioDica de ferramenta1_Popup(remetente do objeto, PopupEventArgs e)
{
ToolTip tooltip = (ToolTip) remetente;
string tooltipText = tooltip. GetToolTip (botão1);
var tooltipSize = e. ToolTipSize;
}

Evento de arrastar e soltar

Muitos elementos da interface do usuário podem usar o evento arrastar e soltar, incluindo o painel, botão, caixa de imagem, caixa de grupo e muito mais. Esse evento é acionado quando o usuário arrasta um arquivo para o elemento da interface do usuário.

privadovaziopanel1_DragDrop(remetente do objeto, DragEventArgs e)
{
string[] arquivos = (string[])e. Dados. GetData (DataFormats. FileDrop, falso);
}

Eventos de passar o mouse e sair do mouse

O evento mouse over é acionado quando o mouse passa sobre um elemento da interface do usuário. Quando o mouse sai e para de passar o mouse sobre o elemento, o evento de sair do mouse é acionado.

privadovaziobutton1_MouseLeave(remetente do objeto, EventArgs e)
{
Botão botão = (Botão) remetente;
var botãoTexto = botão. Texto;
}

Evento alterado verificado

Os elementos da interface do usuário que permitem ao usuário selecionar uma opção podem usar o evento alterado verificado. Isso inclui botões de opção e caixas de seleção. A função é acionada quando você marca ou desmarca a caixa de seleção.

privadovaziocheckBox1_CheckedChanged(remetente do objeto, EventArgs e)
{
CheckBox checkbox = (CheckBox) remetente;
Estado CheckState = caixa de seleção. CheckState;
bool isChecked = checkbox. Verificado;
}

Eventos de Valor Alterado, Valor Selecionado Alterado ou Data Alterada

O evento de valor alterado está disponível em elementos de interface do usuário que permitem selecionar uma opção para alterar um valor. Isso inclui caixas de combinação, seletores de data e hora ou o calendário. A função é acionada quando o usuário seleciona um novo valor.

privadovaziomonthCalendar1_DateChanged(remetente do objeto, DateRangeEventArgs e)
{
Calendário MonthCalendar = (MonthCalendar) remetente;
var hoje = calendário. Data de hoje;
var selectedDatesStart = e. Começar;
var selectedDatesEnd = e. Fim;
}

Evento de botão de clique

A função do manipulador de eventos de clique é acionada quando você clica em um botão.

privadovaziobutton1_Click(remetente do objeto, EventArgs e)
{
Botão botão = (Botão) remetente;
string textValue = botão. Texto;
}

A estrutura de um manipulador de eventos

Os manipuladores de eventos têm dois parâmetros principais: o remetente e um objeto de evento.

O remetente é uma referência ao elemento ou objeto da interface do usuário que acionou o evento, como um botão, caixa de seleção ou painel. Por exemplo, em um evento de caixa de seleção alterada, o remetente seria a caixa de seleção na qual o usuário clicou.

O parâmetro event contém um objeto que armazena dados sobre o evento ocorrido. Isso pode incluir as coordenadas X e Y de um clique de botão ou a localização do mouse no momento em que o evento é acionado.

privadovaziopanel1_DragDrop(remetente do objeto, DragEventArgs e)
{
// Acessar as propriedades do elemento de UI que acionou o evento
Painel painel = (Painel) remetente;
painel. Ativado = falso;
// Acessar os dados do evento
var eventData = e. Dados;
}

Como criar e usar manipuladores de eventos

Primeiro, crie um novo Aplicativo Winforms Forms no Visual Studio. Se você é novo no Windows Forms, há muitos clonar aplicativos que você pode criar enquanto aprende Windows Forms.

Manipuladores de eventos na tela

Você pode gerar manipuladores de eventos na janela de propriedades no lado direito da tela. Depois de criar um novo aplicativo Windows Forms, crie um manipulador de eventos para o elemento de interface do usuário da caixa de seleção. Isso será acionado quando o usuário marcar ou desmarcar a caixa de seleção.

  1. Abra o menu da caixa de ferramentas à esquerda do Visual Studio. Arraste e solte um elemento de IU de caixa de seleção na tela.
  2. Realce a caixa de seleção na tela.
  3. Na janela de propriedades no painel direito, clique no ícone de relâmpago amarelo para visualizar a lista de eventos. Role para baixo até o MarcadoAlterado evento.
  4. Clique no espaço vazio ao lado do MarcadoAlterado evento. Isso gerará automaticamente uma nova função para manipular o evento. A função será criada na parte code-behind do aplicativo, em seu arquivo .cs.
    privadovaziocheckBox1_CheckedChanged(remetente do objeto, EventArgs e)
    {
    // Seu código aqui
    }

Manipuladores de eventos usando o código por trás

Crie uma nova função no código por trás e vincule-a ao elemento de interface do usuário na tela.

  1. Na tela, clique e arraste um elemento de IU de botão. Por padrão, o nome do novo botão será "button1".
  2. Abrir .cs. Se você deixou o nome padrão do aplicativo Windows Form de "Form1", isso seria Form1.cs.
  3. Dentro da classe Form1, crie uma nova função. Certifique-se de que ele siga a estrutura de um manipulador de eventos e tenha dois parâmetros para o remetente e o objeto de evento.
    privadovaziobutton1_MouseHoverEvent(remetente do objeto, EventArgs e)
    {
    // Seu código aqui
    }
  4. Vincule o manipulador de eventos ao evento de foco do mouse de button1. Você pode fazer isso no construtor.
    público Formulário 1()
    {
    InitializeComponent();
    isto.button1.MouseHover += button1_MouseHoverEvent;
    }
  5. Como alternativa, você também pode vincular a função ao evento usando a janela de propriedades na tela. Abra a janela de propriedades e insira o nome do seu manipulador de eventos no campo MouseHover. Este seria button1_MouseHoverEvent.

Como usar o mesmo manipulador de eventos em vários eventos

Você pode vincular a mesma função a vários eventos. Neste caso, se houvesse uma única função chamada MouseEvent, você pode adicionar esse manipulador de eventos ao evento de passar o mouse e clicar do mouse. Isso manipulará ambos os eventos usando a mesma função.

isto.button1.MouseHover += button1_MouseEvent;
isto.button1.MouseClick += button1_MouseEvent;

Usando eventos em um aplicativo Windows Form

Um aplicativo Windows Forms permite arrastar e soltar vários elementos da interface do usuário, como botões, painéis ou caixas de texto em uma tela. Você pode adicionar manipuladores de eventos a esses elementos da interface do usuário, com base nos diferentes eventos que podem ocorrer no aplicativo.

Se você estiver criando um aplicativo do Windows, também poderá adicionar imagens ou gráficos como parte de sua interface de usuário. Você pode usar várias classes C#, como a classe Graphic, Pen ou Color, que permitirá desenhar diferentes tipos de formas na tela.