Criando um Array de objetos – Parte I

Olá leitores do C# Brasil, meu nome é Leonardo Baggio e a partir de hoje estarei trazendo para vocês artigos, tutoriais e novidades sobre a plataforma .Net. E quero desde já, agradecer essa oportunidade que gentilmente o Raphael me concedeu, e ja começar botando a mão na massa.

Hoje irei falar um pouco à respeito de Arrays de objetos, mais especificamente, utilizando controles WindowsForms em diversas situações que podem surgir ao longo do desenvolvimento de um sistema.

O primeiro passo é entender como podemos instanciar um objeto do tipo controle e como atribuir eventos a eles.
Veja no exemplo a seguir:


[csharp]
private void Form1_Load(object sender, EventArgs e)
{

// Declarando o Array do tipo ‘Button’, ‘btn’ como identificador e dimensão ‘[10]‘.
// Button representa um controle ‘Button’ no namespace System.Windows.Forms
Button[] btn = new Button[10];

//Inicializando uma nova instancia de ‘btn’,[0] neste caso.
//Observação importante: lembre-se sempre que devemos iniciar apartir de [0].
btn[0] = new Button();

//Definindo as propriedades basicas do controle: Localização do controle, tamanho, nome e texto; respectivamente.
btn[0].Location = new System.Drawing.Point(100, 100);
btn[0].Size = new System.Drawing.Size(100, 25);
btn[0].Name = “Botao1″;
btn[0].Text = “Botão 1″;

//Adicionando o controle especificado à coleção de controles do Form1

this.Controls.Add(btn[0]);

}[/csharp]

Screenshot do 'Resultado da tela'

Resultado


A seguir iremos criar e assinar eventos neste botão que foi instanciado:

[csharp]
private void Form1_Load(object sender, EventArgs e)
{

Button[] btn = new Button[10];
btn[0] = new Button();
btn[0].Location = new System.Drawing.Point(100, 100);
btn[0].Size = new System.Drawing.Size(100, 25);
btn[0].Name = “Botao1″;
btn[0].Text = “Botão 1″;

// Assinando o evento
btn[0].Click += new System.EventHandler(this.evento_do_botao1);

this.Controls.Add(btn[0]);

}
[/csharp]
e  as ações do evento:
[csharp]
private void evento_do_botao1(object sender, EventArgs e)
{
MessageBox.Show(“Evento do botao1″);
}
[/csharp]

Resultado

Resultado


Outro exemplo utilizando o delegate:
[csharp]
private void Form1_Load(object sender, EventArgs e)
{

Button[] btn = new Button[10];
btn[0] = new Button();
btn[0].Location = new System.Drawing.Point(100, 100);
btn[0].Size = new System.Drawing.Size(100, 25);
btn[0].Name = “Botao1″;
btn[0].Text = “Botão 1″;

//Atribuindo um evento anonimo
btn[0].Click += delegate
{
MessageBox.Show(“Este é um evento anonimo, e está dentro de outro evento(Form1_Load) npor isso não possui (object sender, EventArgs e) nele tambem pode ser assinado em Run-time”);
};

}

[/csharp]

Resultado

Resultado


O próximo passo será ‘gerar botões’ com laços de repetição, que abordaremos na sequência deste post.
Caso tenha alguma duvida, sinta-se à vontade para perguntar nos comentários.

Muito obrigado, e um grande abraço.

Artigos relacionados:

Compartilhe:
  • Digg
  • del.icio.us
  • Technorati
  • Facebook
  • MySpace
  • Google Bookmarks
  • Live
  • Twitter
  • Print
  1. 16 de abril de 2009 at 08:01 | #1

    Muito boas postagens isso sim, espero que nessa volta de postagens, que vem dia após dia melhorando mais e mais, espero que vocês tenham muito sucesso e possam encher nossas mentes com conhecimento!

  2. 16 de abril de 2009 at 10:36 | #2
    Alberto

    Muito bom!…
    aguardo a continuação do artigo…

  1. No trackbacks yet.
Os comentários estão fechados