Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: C# ::: Windows Forms ::: PictureBox

Aprenda a usar a classe PictureBox para a exibição de imagens em seus programas C#

Quantidade de visualizações: 10789 vezes
Um objeto da classe PictureBox pode ser usada em nossos programas Windows Forms C# quando precisamos exibir gráficos e imagens, tais como um bitmap, metafile, ícone, JPEG, GIF ou PNG. A forma mais comum de se adicionar um controle PictureBox aos nossos programas é acessando a aba Common Controls da Toolbox. Em seguida clique no controle PictureBox e o arraste para a posição desejada no formulário.

Uma vez que você já tenha o controle PictureBox no formulário, a forma mais comum de se definir a imagem a ser exibida é por meio da propriedade Image (em tempo de design ou execução). Nas dicas desta seção abordamos formas alternativas de se carregar a imagem a ser exibida.

Veja a posição da classe PictureBox na hierarquia de classes da plataforma .NET:

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Windows.Forms.Control
        System.Windows.Forms.PictureBox
A propriedade SizeMode, que recebe um dos valores definidos na enumeração PictureBoxSizeMode, controla o clipping (recorte) e posicionamento da imagem na área de exibição da PictureBox. Podemos alterar o tamanho da área de exibição em tempo de execução por meio da propriedade ClientSize.

Por padrão, o controle PictureBox é exibido sem bordas. Podemos fornecer uma borda padrão ou tridimensional usando a propriedade BorderStyle. Isso permite que o controle ganhe destaque em relação aos demais controles do formulário, mesmo que nenhuma imagem tenha sido carregada. O controle PictureBox não recebe seleção nem foco, embora alguns eventos do mouse ainda sejam recebidos.

Veja um trecho de código no qual usamos a propriedade Image da classe PictureBox para carregar uma imagem JPG em tempo de execução e exibí-la:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button1_Click_1(object sender, EventArgs e){
  // constrói um objeto Image a partir do endereço da image
  Image imagem = Image.FromFile(@"C:\estudos_csharp_wf\logo.jpg");
  // atribui a imagem construída à propriedade Image
  pictureBox1.Image = imagem;    
}

Para executar o exemplo, certifique-se de ter em seu formulário um PictureBox com o nome "pictureBox1" e um botão com o nome "button1".

Link para compartilhar na Internet ou com seus amigos:

C# ::: Windows Forms ::: ListBox

Como inserir um item em uma determinada posição da ListBox do C# Windows Forms usando o método Insert()

Quantidade de visualizações: 771 vezes
Em algumas situações nós gostaríamos de adicionar um novo item a uma ListBox do C# Windows Forms e indicar a posição (índice) na qual ela deverá ficar. Para isso podemos usar a função Insert() do objeto Items da ListBox.

O método Insert() recebe o índice no qual o elemento será inserido e o item a ser inserido. Veja um exemplo de seu uso no trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e)
{
  // insere um item na terceira posição
  listBox1.Items.Insert(2, "Fortaleza");
}

Se o índice fornecido para o método Insert() não estiver dentro da faixa de índices válidos para os elementos da ListBox, uma exceção do tipo ArgumentOutOfRangeException será atirada:

System.ArgumentOutOfRangeException
HResult=0x80131502
Message=InvalidArgument=Value '20' não é um valor válido para 'index'.
Parameter name: index
Source=System.Windows.Forms
StackTrace:
em System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item)


C# ::: Dicas & Truques ::: Matemática e Estatística

Como calcular porcentagem em C# - Como efetuar cálculos de porcentagem em C#

Quantidade de visualizações: 35043 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em C#.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, valor_final;

      valor = 178.00; // valor original
      percentual = 15.0 / 100.0; // 15%
      valor_final = valor + (percentual * valor);

      // mostra o resultado
      Console.WriteLine("O valor final do produto é: " + valor_final);

      // O resultado será 204,70
      
      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, valor_final;

      valor = 250.00; // valor original
      percentual = 8.0 / 100.0; // 8%
      valor_final = valor - (percentual * valor);

      // mostra o resultado
      Console.WriteLine("O valor final do produto é: " + valor_final);

      // O resultado será 230,00

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

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double perguntas, acertos;

      perguntas = 90.0;
      acertos = 72.0;

      // mostra a porcentagem de acertos
      Console.WriteLine("Porcentagem de acertos: " +
        ((acertos / perguntas) * 100) + "%");

      // mostra a porcentagem de erros
      Console.WriteLine(("Porcentagem de erros: ") +
        (((perguntas - acertos) / perguntas) * 100) + "%");

      // Os resultados serão 80% e 20%

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

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor_anterior, novo_valor, porcentagem_lucro;

      valor_anterior = 300.0; // valor anterior
      novo_valor = 340.0; // valor novo

      // calcula a porcentagem de lucro
      // efetua o cálculo
      porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100;

      Console.WriteLine("A porcentagem de lucro foi de: " +
        porcentagem_lucro + "%");

      // O resultado será 13,33

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

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em C#:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// Algoritmo que calcula porcentagem em C#
using System;

namespace Estudos {
  class Principal {
    // função principal do programa C#
    static void Main(string[] args) {
      // variáveis usadas na resolução do problema
      double valor, percentual, comissao;

      valor = 70.0; // valor do produto
      percentual = 5.0 / 100.0; // 5%

      // calcula a comissão
      comissao = percentual * valor;

      // mostra o resultado
      Console.WriteLine("O valor repassado ao vendedor é: " + comissao);

      // O resultado será 3,5

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



C# ::: Windows Forms ::: TextBox

C# Windows Forms para iniciantes - Como limpar todo o conteúdo de um controle TextBox via código

Quantidade de visualizações: 19047 vezes
Em algumas situações nós precisamos limpar uma caixa de texto TextBox via código, ou seja, enquanto a aplicação C# Windows Forms já estiver executando. Para isso só precisamos efetuar uma chamada ao método Clear() da classe TextBoxBase, superclasse da classe TextBox.

Veja um trecho de código no qual limpamos todo o conteúdo de um controle TextBox com o nome textBox1:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e)
{
  textBox1.Clear();
}



C# ::: Windows Forms ::: DataGridView

Como retornar a linha da célula selecionada em um DataGridView do C# Windows Forms

Quantidade de visualizações: 23358 vezes
Muitas vezes precisamos obter a linha atual de uma determinada célula selecionada no DataGridView. Isso pode ser feito por meio da propriedade CurrentRow. Esta propriedade retorna um objeto da classe DataGridViewRow, que representa uma linha no DataGridView. Podemos usar esta classe para obter o índice da linha que contém a célula selecionada, percorrer todas as células de uma determinada linha, etc.

Veja um trecho de código no qual usamos a propriedade CurrentRow para obter o DataGridViewRow representando a linha da célula selecionada:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button3_Click(object sender, EventArgs e){
  // vamos obter a linha da célula selecionada
  DataGridViewRow linhaAtual = dataGridView1.CurrentRow;

  // vamos exibir o índice da linha atual
  int indice = linhaAtual.Index;
  MessageBox.Show("O índice da linha atual é: " + indice);
}



C# ::: Namespace System.Drawing ::: Graphics

C# Windows Forms - Como passar um objeto da classe Graphics como argumento para um método e usá-lo para desenhar na superfície do formulário

Quantidade de visualizações: 5914 vezes
Em algumas situações gostaríamos de escrever um método que recebe um objeto da classe Graphics como argumento e usar este objeto para alguma tarefa, por exemplo, desenhar na superfície do formulário. Nesta dica eu mostro como isso é possível. Comece escrevendo o seguinte método:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// um método que recebe um objeto da classe Graphics
private void desenhar(ref Graphics g){
  // vamos desenhar uma linha horizontal de 300 pixels na
  // cor preta e espessura de 1 pixel
  g.DrawLine(new Pen(Color.Black, 1), new Point(20, 80),
    new Point(320, 80));

  // vamos liberar o objeto Graphics
  g.Dispose();
}

Note que, na definição do parâmetro do método nós usamos a palavra-chave ref. Isso foi necessário porque queremos que o objeto Graphics seja passado por referência, uma vez que o estamos liberando dentro do corpo do método com uma chamada ao método Dispose().

Veja agora como obter o objeto Graphics relacionado ao formulário atual e passá-lo ao método desenhar():

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button1_Click_1(object sender, EventArgs e){
  // vamos obter o objeto Graphics relacionado ao formulário atual
  Graphics graphics = this.CreateGraphics();

  // vamos passar o objeto Graphics para o método desenhar
  desenhar(ref graphics);
}



C# ::: Namespace System.Drawing ::: Graphics

Desenhando retângulos usando o método DrawRectangle() da classe Graphics do C#

Quantidade de visualizações: 7201 vezes
Retângulos podem ser desenhados em C# e Windows Forms usando o método DrawRectangle() da classe Graphics. Este método pede a caneta de desenho (um objeto da classe Pen), as coordenadas do canto superior esquerdo e a largura e altura do retângulo. Veja a assinatura do método DrawRectangle() mais comumente usada:

Graphics.DrawRectangle(Pen, Single, Single, Single, Single)


Veja um trecho de código no qual desenhamos um retângulo com 250 pixels de largura por 150 pixels de altura:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar um retângulo de 250 pixels de largura por 150
  // pixels de altura
  g.DrawRectangle(new Pen(Color.Red, 1), 50, 50, 250, 150);

  // vamos liberar o objeto Graphics
  g.Dispose();
}

As coordenadas do canto superior esquerdo e a largura e altura do retângulo podem ser especificadas como um objeto da estrutura Rectangle. Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar um retângulo de 250 pixels de largura por 150
  // pixels de altura
  g.DrawRectangle(new Pen(Color.Red, 1), 
    new Rectangle(100, 100, 250, 150));

  // vamos liberar o objeto Graphics
  g.Dispose();
}



C# ::: Dicas & Truques ::: Programação Orientada a Objetos

Programação Orientada a Objetos em C# - Como criar uma classe C# e usar new para criar novas instâncias da mesma

Quantidade de visualizações: 15972 vezes
Esta dica mostra a você, rapidamente, como criar uma classe C# e usar a palavra-chave new para instanciar objetos a partir desta classe. Comece analisando o código para a classe Pessoa (Pessoa.cs):

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

public class Pessoa{ 
  public String nome;
  public int idade;
}

Salve o código como Pessoa.cs. Esta classe possui apenas duas propriedades: nome e idade. Lembre-se que uma classe é composta de propriedades e métodos (funções). Veja agora como criamos um objeto desta classe e acessamos sua propriedade nome:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------
 
static void Main(string[] args){ 
  // cria um objeto da classe Pessoa
  Pessoa p = new Pessoa();
  p.nome = "Osmar J. Silva";
  Console.WriteLine(p.nome);
} 

Observe o uso da palavra-chave new para reservar memória para o objeto da classe sendo criado na instrução:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------
 
Pessoa p = new Pessoa();

Observe também o uso do operador "." (ponto). Este operador é usado para acessarmos as propriedades e métodos presentes nos objetos das classes em C#.


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

Datas e horas em C# - Como obter o valor numérico do dia da semana para uma determinada data usando C#

Quantidade de visualizações: 44 vezes
A propriedade DayOfWeek da classe DateTime da linguagem C# retorna um valor numérico que corresponde ao dia da semana. Assim, se o dia for domingo, o retorno será 0. Se for segunda-feira, o resultado será 1, e assim por diante.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

using System;

namespace Estudos{
  class Program{
    static void Main(string[] args) {
      // domingo = 0, segunda = 1, etc
      DateTime agora = DateTime.Now;
      int dia_semana = (int)agora.DayOfWeek;
      Console.WriteLine("O valor numérico do dia da semana é: {0:D}", dia_semana);

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

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

O valor numérico do dia da semana é: 2


Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

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á 40 usuários muito felizes estudando em nosso site.