Você está aqui: C# ::: Dicas & Truques ::: Mouse e Teclado

Como detectar qual botão do mouse foi pressionado

Quantidade de visualizações: 11176 vezes
Em algumas situações nós precisamos saber qual botão do mouse o usuário pressionou durante uma operação de clique ou pressionamento do mouse. Para isso podemos usar a propriedade Button da classe MouseEventArgs. Um objeto desta classe é fornecido aos tratadores dos eventos do mouse MouseUp, MouseDown, MouseMove, MouseHover
e MouseClick.

A propriedade Button é um objeto da enumeração MouseButtons e possui os seguintes valores:

a) Left - O botão esquerdo foi pressionado.
b) None - Nenhum botão foi pressionado.
c) Right - O botão direito foi pressionado.
d) Middle - O botão do meio do mouse foi pressionado.

Veja um trecho de código no qual detectamos qual botão foi pressionado em um evento MouseClick do formulário:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void Form1_MouseClick(object sender, MouseEventArgs e){
  if(e.Button == MouseButtons.Left){
    MessageBox.Show("Fui clicado com o botão esquerdo!");
  }
  else if(e.Button == MouseButtons.Right){
    MessageBox.Show("Fui clicado com o botão direito!");
  }
  else if(e.Button == MouseButtons.Middle){
    MessageBox.Show("Fui clicado com o botão do meio!");
  }
  else{
    MessageBox.Show("O que está acontecendo?");
  }
}


Link para compartilhar na Internet ou com seus amigos:

C# ::: Fundamentos da Linguagem ::: Estruturas de Controle

Apostila C# para iniciantes - Como escrever um laço for infinito em C#

Quantidade de visualizações: 10116 vezes
A linguagem C# permite a criação de laços for infinitos. Para isso, só precisamos omitir as partes de inicialização, teste de condição de parada e incremento ou decremento da variável de controle. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos{
  class Program{
    static void Main(string[] args) {
      for (; ; ) {
        Console.Write("Digite um número inteiro " +
          "(-1 para sair): ");
        int valor = int.Parse(Console.ReadLine());

        // testa se o valor lido é -1. Se for pára
        // o laço
        if (valor == -1)
          break;

        // exibe o valor lido
        Console.WriteLine("Valor lido: {0}", valor);
      }

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}


Ao executarmos este código nós teremos o seguinte resultado:

Digite um número inteiro (-1 para sair): 54
Valor lido: 54
Digite um número inteiro (-1 para sair): 23
Valor lido: 23
Digite um número inteiro (-1 para sair): 90
Valor lido: 90
Digite um número inteiro (-1 para sair): -1

Pressione uma tecla para sair...

Veja como usamos a instrução break para sair do laço caso o valor lido seja -1. Observe ainda o uso do método Parse() da classe Int32 para converter a string digitada pelo usuário em um valor do tipo int.


C# ::: Dicas & Truques ::: Data e Hora

Como exibir horas no formato curto em C# usando o sinalizador {0:t} da função Format() da classe String

Quantidade de visualizações: 64 vezes
Nesta dica mostrarei como podemos usar o sinalizador {0:t} da função Format() da classe String da linguagem C# para mostrar a hora atual no formato curto, ou seja, horas e minutos.

Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // hora atual no formato curto
      DateTime agora = DateTime.Now;
      
      // mostramos o resultado
      System.Console.WriteLine("Agora são: {0:t}", agora);

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Agora são: 09:37

Veja que aqui eu formatei as horas diretamente na saída do programa. Se quisermos, por exemplo, guardar a formatação em uma variável, podemos fazê-lo da seguinte forma:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // hora atual no formato curto
      DateTime agora = DateTime.Now;

      // guardamos o resultado em uma variável
      string horasStr = String.Format("{0:t}", agora);

      // mostramos o resultado
      System.Console.WriteLine("Agora são: " + horasStr);

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}



C# ::: Coleções (Collections) ::: List<T>

Como remover um elemento em uma determinada posição de uma List<T> do C# usando a função RemoveAt()

Quantidade de visualizações: 9699 vezes
Em algumas situações gostaríamos de remover um elemento em uma determinada posição da List<T>. Para isso podemos usar o método RemoveAt(). Veja sua assinatura:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

public void RemoveAt(
  int index
)


Note que só precisamos fornecer o índice do elemento a ser removido. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // vamos criar um objeto da classe List<T>
  List<int> valores = new List<int>();

  // vamos inserir quatro valores na lista
  valores.Add(5);
  valores.Add(2);
  valores.Add(6);
  valores.Add(9);

  // vamos usar o laço foreach para percorrer os elementos na lista
  Console.WriteLine("Elementos na lista:");
  foreach(int v in valores){
    Console.WriteLine(v);    
  }

  // vamos remover o terceiro elemento (com índice 2)
  valores.RemoveAt(2);

  // vamos usar o laço foreach para percorrer os elementos na lista novamente
  Console.WriteLine("Elementos na lista:");
  foreach(int v in valores){
    Console.WriteLine(v);    
  }

  // vamos pausar a execução
  Console.ReadKey();
}

Ao executarmos este código teremos o seguinte resultado:

Elementos na lista:
5
2
6
9
Elementos na lista:
5
2
9

Este método pode lançar uma exceção do tipo ArgumentOutOfRangeException se o índice fornecido for menor que 0 ou igual ou superior à quantidade de itens na lista.


Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 88 usuários muito felizes estudando em nosso site.