martes, 24 de marzo de 2009

Los Eventos

Un evento es una acción que se puede manejar desde el código.
Estos eventos pueden ser
Por una acción del usuario. Por ejemplo pulsar cualquier tecla
Tambien puede ser un código del programa o del propio sistema.
Las aplicaciones controladas por eventos ejecutan cierto código en respuesta a diferentes eventos.
Los códigos estan en métodos llamados manejadores de eventos. Todos los controles tienen un conjunto de eventos y el método manejador de evento tiene código, este se ejecuta.

por ejemplo:

private void btAceptar_Click(object sender, EventArgs e)
{

}
Cada método manejador de eventos tiene los siguientes parametros:

sender es una referencia al objeto que lanzo el evento.Por ejemplo , si se pulsa un botón, sender es la referencia al botón que se pulso.

e es una referencia a un objeto de la clase EventArgs, que tiene información del evento.

Ejemplo para manipular el evento enter



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Aplicacion_wndows_2_Enter
{
public partial class Form1 : Form
{
Empleado[] empresa;
int i;
public Form1()
{ empresa=new Empleado[10];
i = 0;
InitializeComponent();
lbDesplegar.Items.Add(" No Empleado Nombre Ciudad ");

}

private void btAceptar_Click(object sender, EventArgs e)
{

if (i>=0 &&i < 10)
{


Empleado e1 = new Empleado(int.Parse(txtbNoEmpleado.Text), txtbNomEmp.Text, int.Parse(txtbCiudad.Text));
lbDesplegar.Items.Add("\t"+txtbNoEmpleado.Text + "\t" + txtbNomEmp.Text + "\t" + txtbCiudad.Text);


empresa[i] = e1;
i++;
}
else
{
txtbNoEmpleado.Enabled = false;
txtbCiudad.Enabled = false;
txtbNomEmp.Enabled = false;
btAceptar.Enabled = false;

}
txtbCiudad.Clear();
txtbNoEmpleado.Clear();
txtbNomEmp.Clear();
txtbNoEmpleado.Focus();


}

private void txtbNoEmpleado_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == Convert.ToChar(13))
{
txtbNomEmp.Focus();
}

}

private void txtbNomEmp_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == Convert.ToChar(13))
txtbCiudad.Focus();
}

private void txtbCiudad_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == Convert.ToChar(13))
{
btAceptar_Click(sender, e);
txtbCiudad.Clear();
txtbNoEmpleado.Clear();
txtbNomEmp.Clear();
txtbNoEmpleado.Focus();

}
}

private void txtbNoEmpleado_TextChanged(object sender, EventArgs e)
{

}

private void txtbNomEmp_TextChanged(object sender, EventArgs e)
{


}

private void txtbCiudad_TextChanged(object sender, EventArgs e)
{

}
}
}

jueves, 12 de marzo de 2009

Puntos importantes para crear la clase





Para crear una clase del proyecto debe seleccionar la opcion proyect
y despues add class y despues darle el nombre de la clase porque automatica le da el nombre de class1

Pantalla de figuras geometricas

Programa figuras geometricas

using System;
using System.Collections.Generic;
using System.Text;

namespace Aplicacion_figuras_geometricas_planas
{
class Program
{
static void Main(string[] args)
{
Rectangulo R1 = new Rectangulo();
Console.Write("Introduce el largo del rectángulo : ");
double L = double.Parse(Console.ReadLine());
R1.asignarLargo(L);
Console.Write("\nIntroduce el ancho del rectángulo :");
double An = double.Parse(Console.ReadLine());
R1.asignarAncho(An);
Console.WriteLine("\nel area del rectangulo es {0}", R1.area());
Console.WriteLine("el perimetro del rectangulo es {0}", R1.perimetro());
double r;
Console.Write("\n\nIntroduce valor de radio de un circulo: ");
r = double.Parse(Console.ReadLine());
Circulo c1=new Circulo(r);
Console.WriteLine("\narea es ={0} ", c1.area());
Console.WriteLine("la circunferencia es {0} ", c1.perimetro());
Console.ReadKey();

}
}
}

Clase Circulo

using System;
using System.Collections.Generic;
using System.Text;

namespace Aplicacion_figuras_geometricas_planas
{
class Circulo
{
double radio;
public Circulo()
{
radio = 0;
}
public Circulo(double rad)
{
radio = rad;
}
public double area()
{
double a;
a = Math.PI * Math.Pow(radio, 2);
return a;
}
public double perimetro()
{
double p;
p = 2 * radio * Math.PI;
return p;
}


}
}

Clase Rectangulo

using System;
using System.Collections.Generic;
using System.Text;

namespace Aplicacion_figuras_geometricas_planas
{
class Rectangulo
{
double Largo;
double Ancho;
public Rectangulo()
{
Largo = 0;
Ancho = 0;
}
public Rectangulo(double w, double h)
{
Largo = h;
Ancho = w;
}
public void asignarLargo(double h)
{
Largo = h;
}
public void asignarAncho(double w)
{
Ancho = w;
}
public double obtenerLargo()
{
return Largo;
}
public double obtenerAncho()
{
return Ancho;
}
public double area()
{
return Largo * Ancho;
}
public double perimetro()
{
return 2 * (Largo + Ancho);
}

}
}