//Boton para generar 5 alumnos y 5 materias automaticamente. private void btnPruebaAlumno_Click(object sender, EventArgs e) { ClaseAlumno Alumno = new ClaseAlumno(1, "Sebastian", "Otero"); ClaseAlumno Alumno1 = new ClaseAlumno(2, "Roberto", "Velez"); ClaseAlumno Alumno2 = new ClaseAlumno(3, "Emilia", "Galea"); ClaseAlumno Alumno3 = new ClaseAlumno(4, "Juan Cruz", "Yrigoyen"); ClaseAlumno Alumno4 = new ClaseAlumno(5, "Hernan", "Lacroze"); Alumno.EventoPromedioAlto += FuncionEventoPromedioAlto; Alumno1.EventoPromedioAlto += FuncionEventoPromedioAlto; Alumno2.EventoPromedioAlto += FuncionEventoPromedioAlto; Alumno3.EventoPromedioAlto += FuncionEventoPromedioAlto; Alumno4.EventoPromedioAlto += FuncionEventoPromedioAlto; universidad.AgregarAlumno(Alumno); universidad.AgregarAlumno(Alumno1); universidad.AgregarAlumno(Alumno2); universidad.AgregarAlumno(Alumno3); universidad.AgregarAlumno(Alumno4); universidad.OrdenarAlfabeticamente(); ActualizarDGV(dgvAlumnos, universidad.AlumnosQueCursan); ClaseMateria Materia = new ClaseMateriaBasica(1, "Matematicas"); ClaseMateria Materia1 = new ClaseMateriaBasica(2, "Literatura"); ClaseMateria Materia2 = new ClaseMateriaEspecializada(3, "Quimica Organica"); ClaseMateria Materia3 = new ClaseMateriaBasica(4, "Fisica"); ClaseMateria Materia4 = new ClaseMateriaEspecializada(5, "Telecomunicaciones"); universidad.AgregarMateria(Materia); universidad.AgregarMateria(Materia1); universidad.AgregarMateria(Materia2); universidad.AgregarMateria(Materia3); universidad.AgregarMateria(Materia4); ActualizarDGV(dgvMaterias, universidad.MateriasImpartidas); btnPruebaAlumno.Enabled = false; }
//Botón para añadir una materia a la universidad private void btnAñadirMateria_Click(object sender, EventArgs e) { try { //Controla si se ingreso algún texto en el codigo de materia. if (txtMateriaCodigo.Text == "") { throw new Exception("Ingrese codigo"); } //Controla si la denominacion ingresada tiene mas de 3 caracteres if (txtMateriaDenominacion.Text.Count() < 4) { throw new Exception("Ingrese denominacion"); } //Declara la materia ClaseMateria Materia; //Almacena variables de los valores ingresados int codigo = Convert.ToInt32(txtMateriaCodigo.Text); string denominacion = txtMateriaDenominacion.Text; //Crea la materia según se haya elegido básica o especializada (por medio de un combobox). if (cmbMateriaTipo.SelectedIndex == 0) { Materia = new ClaseMateriaBasica(codigo, denominacion); } else { Materia = new ClaseMateriaEspecializada(codigo, denominacion); } //Agrega la materia a la universidad universidad.AgregarMateria(Materia); //Actualiza el DataGridView ActualizarDGV(dgvMaterias, universidad.MateriasImpartidas); //Borra los TextBox con los valores ingresados respecto a la materia nueva. txtMateriaCodigo.Clear(); txtMateriaDenominacion.Clear(); cmbMateriaTipo.SelectedIndex = 0; } catch (Exception ex) { //En caso de error muestra el mensaje correspondiente. MessageBox.Show(ex.Message, "¡ERROR¡"); } }
//Botón para asignar una materia a un alumno private void btnAsignarMateria_Click(object sender, EventArgs e) { try { //En caso de no existir aun datos de alumnos if (dgvAlumnos.Rows.Count == 0) { throw new Exception("Ingrese alumno."); } //En caso de no estar seleccionado un alumno if (dgvAlumnos.SelectedRows.Count < 1) { throw new Exception("Seleccione alumno."); } //En caso de no existir aun datos de materias if (dgvMaterias.Rows.Count == 0) { throw new Exception("Ingrese materias."); } //En caso de no estar seleccionada una materia if (dgvMaterias.SelectedRows.Count < 1) { throw new Exception("Seleccione materia."); } //Crea alumno y materia, según lo seleccionado en los DataGridView ClaseAlumno Alumno = (ClaseAlumno)(dgvAlumnos.SelectedRows[0].DataBoundItem); ClaseMateria Materia = (ClaseMateria)(dgvMaterias.SelectedRows[0].DataBoundItem); //Comprobar si ya esta cursando la materia if (!PuedeCursar(Alumno.MateriasEnCurso, Materia)) { throw new Exception("Ya esta cursando esta materia."); } //Comprobar si ya aprobo esa materia if (!PuedeCursar(Alumno.MateriasAprobadas, Materia)) { throw new Exception("Ya curso y aprobo esta materia."); } //Comprobar si ya esta cursando una materia especializada if (Materia.GetType().Equals(typeof(ClaseMateriaEspecializada))) { foreach (ClaseMateria C in Alumno.MateriasEnCurso) { if (C.GetType() == typeof(ClaseMateriaEspecializada)) { throw new Exception("Ya esta cursando una especializada"); } } } //Almacena los datos de la materia en variables int codigo = Materia.Codigo; string denominacion = Materia.Denominacion; //Crea un nuevo objeto con los datos obtenidos de la materia seleccionada, //para asociar al alumno if (Materia.GetType().Equals(typeof(ClaseMateriaBasica))) { ClaseMateria MateriaAsignada = new ClaseMateriaBasica(codigo, denominacion); Alumno.AsignarMateria(MateriaAsignada); } else { ClaseMateria MateriaAsignada = new ClaseMateriaEspecializada(codigo, denominacion); Alumno.AsignarMateria(MateriaAsignada); } //Actualiza el DataGridView de las materias cursadas actualmente por el alumno ActualizarDGV(dgvMateriasEnCurso, Alumno.MateriasEnCurso); } catch (Exception ex) { //En caso de error, muestra el mensaje correspondiente MessageBox.Show(ex.Message, "¡ERROR!"); } }