Cinder92 Programador Intermedio
Mensajes : 29 Puntos : 52
| Tema: Altas, bajas y cambios con arreglos unidimensionales Mar Abr 12, 2011 10:28 pm | |
| Bueno gente esta pequeña aplicación nos la dejó de tarea la facultad por si a alguien le sirve. saludos Creamos una clase Maestro con los sig. atributos y métodos - Código:
-
public class Maestro { int numero; int matricula; string nombre; string direccion; string telefono; string correoelectronico; string fechanacimiento; double sueldo;
public Maestro() { }
public int Numero { get { return this.numero; } set { this.numero = value; } }
public int Matricula { get { return this.matricula; } set { this.matricula = value; } }
public string Nombre { get { return this.nombre; } set { this.nombre = value; } }
public string Direccion { get { return this.direccion; } set { this.direccion = value; } }
public string Telefono { get { return this.telefono; } set { this.telefono = value; } }
public string Correo { get { return this.correoelectronico; } set { this.correoelectronico = value; } }
public string FechaNacimiento { get { return this.fechanacimiento; } set { this.fechanacimiento = value; } }
public double Sueldo { get { return this.sueldo; } set { this.sueldo = value; } } }
Creamos un formulario y presionamos F7 para entrar al código seguidamente escribimos lo siguiente - Código:
-
public partial class Form1 : Form { Maestro[] Maestrito = new Maestro[30]; DataTable dataTable = new DataTable(); int control2; public Form1() { InitializeComponent(); dataTable.Columns.Add("Numero", typeof(int)); dataTable.Columns.Add("Matricula", typeof(int)); dataTable.Columns.Add("Nombre", typeof(string)); dataTable.Columns.Add("Direccion", typeof(string)); dataTable.Columns.Add("Teléfono", typeof(string)); dataTable.Columns.Add("Correo", typeof(string)); dataTable.Columns.Add("Fecha Nacimiento", typeof(string)); dataTable.Columns.Add("Sueldo", typeof(double)); }
public void agregaMaestros() { Maestro oM = new Maestro(); int position = Convert.ToInt16(textBox8.Text.Trim()); if (position > 29) { MessageBox.Show("La tabla está llena, y no se pueden agregar más maestros");
} else { oM.Numero = Convert.ToInt32(textBox8.Text.Trim()) + 1; try { if (textBox1.Text.Trim().Length > 10) { MessageBox.Show("La matrícula resulta ser demasiado larga o no tiene el formato correcto (hasta 10 números)"); return; } else { oM.Matricula = Convert.ToInt32(textBox1.Text.Trim()); } } catch (Exception) { MessageBox.Show("La matrículan no se ha introducido o no tiene el formato correcto, debe ser solo números (hasta 10 números)"); return; }
try { if (textBox2.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el nombre del maestro por favor"); return; } oM.Nombre = textBox2.Text.Trim(); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el nombre del maestro correctamente."); return; }
try { if (textBox3.Text.Trim().Length == 0) { MessageBox.Show("Introduzca la dirección del maestro por favor"); return; } oM.Direccion = textBox3.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito la dirección del maestro correctamente."); return; }
try { if (textBox4.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el teléfono del maestro por favor"); return; } oM.Telefono = textBox4.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito el teléfono del maestro, y haberlo escrito correctamente"); return; }
try { if (textBox5.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el correo electrónico del maestro por favor"); return; } oM.Correo = textBox5.Text.Trim(); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el correo eléctronico del maestro, y haberlo escrito correctamente."); return; }
try { if (textBox6.Text.Trim().Length == 0) { MessageBox.Show("Introduzca la fecha de nacimiento del maestro por favor"); return; } oM.FechaNacimiento = textBox6.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito la fecha de nacimiento del maestro, y haberla escrito correctamente."); return; }
try { if (textBox7.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el sueldo del maestro por favor"); return; } oM.Sueldo = Convert.ToDouble(textBox7.Text.Trim()); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el sueldo del maestro y haberlo escrito correctamente (con un formato 0.00)"); return; }
Maestrito[position] = oM;
textBox8.Text = Convert.ToString(position + 1); } }
public void eliminaMaestro() { int control = Convert.ToInt32(textBox9.Text.Trim())-1; Maestrito[control] = null; } public void modificaMaestro() { Maestro oM = new Maestro();
try { control2 = Convert.ToInt16(textBox9.Text.Trim()) - 1; } catch (Exception) { } if (Maestrito[control2] == null) { MessageBox.Show("No existe algun maestro con ese número de registro"); return; }
else { try { oM.Numero = control2 + 1; } catch (Exception) { MessageBox.Show("Escriba un número entero como referencia para modificar al maestro"); return; }
try { if (textBox1.Text.Trim().Length > 10) { MessageBox.Show("La matrícula resulta ser demasiado larga o no tiene el formato correcto (hasta 10 números)"); return; } else { oM.Matricula = Convert.ToInt32(textBox1.Text.Trim()); } } catch (Exception) { MessageBox.Show("La matrícula debe ser solo números (hasta 10 números)"); return; }
try { if (textBox2.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el nombre del maestro por favor"); return; } oM.Nombre = textBox2.Text.Trim(); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el nombre del maestro correctamente."); return; }
try { if (textBox3.Text.Trim().Length == 0) { MessageBox.Show("Introduzca la dirección del maestro por favor"); return; } oM.Direccion = textBox3.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito la dirección del maestro correctamente."); return; }
try { if (textBox4.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el teléfono del maestro por favor"); return; } oM.Telefono = textBox4.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito el teléfono del maestro, y haberlo escrito correctamente"); return; }
try { if (textBox5.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el correo electrónico del maestro por favor"); return; } oM.Correo = textBox5.Text.Trim(); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el correo eléctronico del maestro, y haberlo escrito correctamente."); return; }
try { if (textBox6.Text.Trim().Length == 0) { MessageBox.Show("Introduzca la fecha de nacimiento del maestro por favor"); return; } oM.FechaNacimiento = textBox6.Text.Trim(); } catch (Exception) { MessageBox.Show("Verífique haber escrito la fecha de nacimiento del maestro, y haberla escrito correctamente."); return; }
try { if (textBox7.Text.Trim().Length == 0) { MessageBox.Show("Introduzca el sueldo del maestro por favor"); return; } oM.Sueldo = Convert.ToDouble(textBox7.Text.Trim()); } catch (Exception) { MessageBox.Show("Verifíque haber escrito el sueldo del maestro y haberlo escrito correctamente (con un formato 0.00)"); return; }
Maestrito[control2] = oM; } } public void listaMaestros() { dataTable.Clear(); for (int iv = 0; iv < Maestrito.Length; iv++) { try { dataTable.Rows.Add(Maestrito[iv].Numero, Maestrito[iv].Matricula, Maestrito[iv].Nombre, Maestrito[iv].Direccion, Maestrito[iv].Telefono, Maestrito[iv].Correo, Maestrito[iv].FechaNacimiento, Maestrito[iv].Sueldo);
} catch (Exception) { } } dataGridView1.DataSource = dataTable; dataGridView1.AutoResizeColumns(); }
public void buscaMaestro() { dataTable.Clear(); for (int iv = 0; iv < 19; iv ++) { try { if (Maestrito[iv].Nombre == textBox2.Text.Trim()) { dataTable.Rows.Add(Maestrito[iv].Numero, Maestrito[iv].Matricula, Maestrito[iv].Nombre, Maestrito[iv].Direccion, Maestrito[iv].Telefono, Maestrito[iv].Correo, Maestrito[iv].FechaNacimiento, Maestrito[iv].Sueldo);
} dataGridView1.DataSource = dataTable; dataGridView1.AutoResizeColumns(); } catch (Exception) { } } } public void button1_Click(object sender, EventArgs e) { this.agregaMaestros(); }
private void Form1_Load(object sender, EventArgs e) {
}
private void button2_Click(object sender, EventArgs e) { this.listaMaestros(); }
private void button3_Click(object sender, EventArgs e) { if (MessageBox.Show("¿Quieres eliminar el registro de ese maestro?", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes) { this.eliminaMaestro(); } }
private void button4_Click(object sender, EventArgs e) { if (MessageBox.Show("¿Quieres modificar el registro de ese maestro?", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { this.modificaMaestro(); } }
private void button5_Click(object sender, EventArgs e) { this.buscaMaestro(); }
private void toolStripButton5_Click(object sender, EventArgs e) { this.listaMaestros(); }
private void toolStripButton1_Click(object sender, EventArgs e) { this.agregaMaestros(); }
private void toolStripButton2_Click(object sender, EventArgs e) { this.eliminaMaestro(); }
private void toolStripButton3_Click(object sender, EventArgs e) { this.modificaMaestro(); }
private void toolStripButton4_Click(object sender, EventArgs e) { this.buscaMaestro(); }
private void dataGridView1_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { try { int numero = (int)(dataGridView1.CurrentRow.Cells["Numero"].Value); textBox9.Text = numero.ToString(); int matricula = (int)(dataGridView1.CurrentRow.Cells["Matricula"].Value); textBox1.Text = matricula.ToString(); string nombre = (string)(dataGridView1.CurrentRow.Cells["Nombre"].Value); textBox2.Text = nombre; string direccion = (string)(dataGridView1.CurrentRow.Cells["Direccion"].Value); textBox3.Text = direccion; string telefono = (string)(dataGridView1.CurrentRow.Cells["Teléfono"].Value); textBox4.Text = telefono; string correo = (string)(dataGridView1.CurrentRow.Cells["Correo"].Value); textBox5.Text = correo; string fecha = (string)(dataGridView1.CurrentRow.Cells["Fecha Nacimiento"].Value); textBox6.Text = fecha; double sueldo = (double)(dataGridView1.CurrentRow.Cells["Sueldo"].Value); textBox7.Text = sueldo.ToString(); } catch (Exception) { } }
}
Cabe mecionar que este programa tiene un datagrid, y varios textbox y botones revisen bien el código y podran identificarlos, lo que hace es que puedes agregar hasta 30 maestros y en un label se va a ir incrementando hasta llegar a 30 y no te dejara agregar mas, hace busquedas, elimina, modifica y agrega saludos. Agradecimientos especiales a Rudy Carrillo. | |
|