Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ===++===
- //
- // OrtizOL
- //
- // ===--===
- /*============================================================
- //
- // Clase: ControlDatos.cs
- //
- // Original en: http://goo.gl/sqPt2m
- //
- // Propósito: Representar los controles con la información
- // de las notas de los estudiantes.
- //
- ============================================================*/
- using System;
- using System.ComponentModel;
- using System.Drawing;
- using System.Windows.Forms;
- namespace NotasCurso.GUI
- {
- /// <summary>
- /// Clase que representa el control con los datos
- /// de las notas de los estudiantes.
- /// </summary>
- public partial class ControlDatos : UserControl
- {
- #region Componentes
- /// <summary>
- /// Etiquetas para la enumeración de los 12 estudiantes.
- /// </summary>
- private Label[] lblEstudiantes;
- /// <summary>
- /// Etiquetas para la enumeración de 12 notas de los estudiantes.
- /// </summary>
- private Label[] lblNotas;
- /// <summary>
- /// Botones para cambiar cada una de las notas de los estudiantes.
- /// </summary>
- private Button[] btnCambiarNota;
- /// <summary>
- /// Ventana principal de la aplicación.
- /// </summary>
- private Principal ventanaPrincipal;
- #endregion
- #region Constructores
- /// <summary>
- /// Crea un control para los datos de los estudiantes.
- /// </summary>
- /// <param name="principal">Componente padre.</param>
- public ControlDatos(Principal principal)
- {
- InitializeComponent();
- ventanaPrincipal = principal;
- ConfiguracionComponentes();
- }
- #endregion
- #region Métodos
- /// <summary>
- /// Crea e inicializa los componentes integrales
- /// para los datos de los estudiantes.
- /// </summary>
- private void ConfiguracionComponentes()
- {
- lblEstudiantes = new Label[12];
- lblNotas = new Label[12];
- btnCambiarNota = new Button[12];
- int espacioControles = 15;
- for (int i = 0; i < lblEstudiantes.Length; i++)
- {
- // Etiquetas para el número de estudiante
- lblEstudiantes[i] = new Label();
- lblEstudiantes[i].AutoSize = true;
- lblEstudiantes[i].Location = new Point(9, espacioControles);
- lblEstudiantes[i].Name = String.Format("lblEstudiante{0}", (i + 1).ToString());
- lblEstudiantes[i].Text = String.Format("Estudiante {0}:", (i + 1).ToString());
- // Etiquetas para la notas de cada estudiante:
- lblNotas[i] = new Label();
- lblNotas[i].AutoSize = true;
- lblNotas[i].ForeColor = Color.Blue;
- lblNotas[i].Location = new Point(139, espacioControles);
- lblNotas[i].Name = String.Format("lblNotas{0}", (i + 1).ToString());
- lblNotas[i].Text = String.Format("0.0");
- // Botones para cambiar la nota de cada estudiante:
- btnCambiarNota[i] = new Button();
- btnCambiarNota[i].Click += ClickBotones;
- btnCambiarNota[i].Location = new Point(193, espacioControles - 5);
- btnCambiarNota[i].Name = String.Format("btnCambiarNota{0}", (i + 1).ToString());
- btnCambiarNota[i].Text = String.Format("Cambiar");
- espacioControles += 24;
- gbxNotas.Controls.Add(lblEstudiantes[i]);
- gbxNotas.Controls.Add(lblNotas[i]);
- gbxNotas.Controls.Add(btnCambiarNota[i]);
- }
- }
- /// <summary>
- /// Actualiza la nota de un estudiante en el control de datos.
- /// </summary>
- /// <param name="estudiante">Número (1-12) del estudiante.</param>
- /// <param name="nota">Nota del estudiante.</param>
- public void RefrescarNota(int estudiante, double nota)
- {
- lblNotas[estudiante - 1].Text = String.Format("{0}", nota.ToString("F1"));
- }
- #endregion
- #region Eventos
- /// <summary>
- /// Activa el evento para cambio de nota.
- /// </summary>
- /// <param name="sender">Objeto generador del evento.</param>
- /// <param name="e">Datos del evento.</param>
- private void ClickBotones(object sender, System.EventArgs e)
- {
- switch(((Button)sender).Name)
- {
- case "btnCambiarNota1":
- ventanaPrincipal.CambiarNota(1);
- break;
- case "btnCambiarNota2":
- ventanaPrincipal.CambiarNota(2);
- break;
- case "btnCambiarNota3":
- ventanaPrincipal.CambiarNota(3);
- break;
- case "btnCambiarNota4":
- ventanaPrincipal.CambiarNota(4);
- break;
- case "btnCambiarNota5":
- ventanaPrincipal.CambiarNota(5);
- break;
- case "btnCambiarNota6":
- ventanaPrincipal.CambiarNota(6);
- break;
- case "btnCambiarNota7":
- ventanaPrincipal.CambiarNota(7);
- break;
- case "btnCambiarNota8":
- ventanaPrincipal.CambiarNota(8);
- break;
- case "btnCambiarNota9":
- ventanaPrincipal.CambiarNota(9);
- break;
- case "btnCambiarNota10":
- ventanaPrincipal.CambiarNota(10);
- break;
- case "btnCambiarNota11":
- ventanaPrincipal.CambiarNota(11);
- break;
- case "btnCambiarNota12":
- ventanaPrincipal.CambiarNota(12);
- break;
- }
- }
- #endregion
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement