Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ===++===
- //
- // OrtizOL - xCSw
- //
- // Proyecto: Cupi2.NET
- //
- // ===--===
- /*============================================================
- //
- // Clase(s): Principal.
- //
- // Propósito: Representar el formulario principal de la
- // aplicación.
- //
- // Original: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/visualizacion-codigo/interfazavion
- //
- ============================================================*/
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using ElAvión.Modelo;
- namespace ElAvión.GUI
- {
- /// <summary>
- /// Clase que representa el formulario principal de la aplicación.
- /// </summary>
- public partial class Principal : Form
- {
- #region Campos o constantes de sistema
- /// <summary>
- /// Constante con valor útil para redibujar componentes compuestos.
- /// </summary>
- private const int WM_SETREDRAW = 11;
- #endregion
- #region campos
- /// <summary>
- /// Representa una instancia de la entidad `Avion`.
- /// </summary>
- private Avion m_avion;
- #endregion
- #region Componentes de interfaz
- /// <summary>
- /// Instancia de control personalizado del diagrama de sillas de la avión.
- /// </summary>
- private ControlAvion ctlAvion;
- #endregion
- public Principal()
- {
- // Inicializa los componentes integrales del formulario principal.
- InitializeComponent();
- // Operaciones de inicialización:
- m_avion = new Avion();
- // Creación de la instancia del control de avión gráfica (diagrama de sillas):
- ctlAvion = new ControlAvion(m_avion);
- ctlAvion.Location = new Point(2, 13);
- ctlAvion.Size = new Size(597, 475);
- this.Controls.Add(ctlAvion);
- }
- #region Métodos:
- /// <summary>
- /// Envío de mensaje para suspender redibujar efectivamente la interfaz de sillas del avión.
- /// </summary>
- /// <param name="hWnd">Puntero</param>
- /// <param name="wMsg">Valor constante</param>
- /// <param name="wParam">Valor booleano</param>
- /// <param name="lParam">Valor centinela de modo de presentación.</param>
- /// <returns></returns>
- [System.Runtime.InteropServices.DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, Int32 wMsg, bool wParam, Int32 lParam);
- internal void Actualizar()
- {
- SendMessage(this.Handle, WM_SETREDRAW, false, 0);
- this.Controls.Remove(ctlAvion);
- ctlAvion = new ControlAvion(m_avion);
- ctlAvion.Location = new Point(2, 13);
- ctlAvion.Size = new Size(597, 475);
- this.Controls.Add(ctlAvion);
- SendMessage(this.Handle, WM_SETREDRAW, true, 0);
- this.Invalidate();
- this.Refresh();
- }
- #endregion
- #region Eventos:
- /// <summary>
- /// Activa el formulario de registro de pasajero.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnRegistrarPasajero_Click(object sender, EventArgs e)
- {
- using(DialogoRegistrarPasajero drp = new DialogoRegistrarPasajero(this, m_avion))
- {
- DialogResult dr = drp.ShowDialog(this);
- }
- }
- /// <summary>
- /// Activa el formulario de eliminación/anulación de pasajero.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnEliminarPasajero_Click(object sender, EventArgs e)
- {
- using(DialogoEliminarPasajero dep = new DialogoEliminarPasajero(this, m_avion))
- {
- DialogResult dr = dep.ShowDialog(this);
- }
- }
- /// <summary>
- /// Activa el formulario de búsqueda de pasajero.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnBuscarPasajero_Click(object sender, EventArgs e)
- {
- using(DialogoBuscarPasajero dbp = new DialogoBuscarPasajero(m_avion))
- {
- dbp.ShowDialog(this);
- }
- }
- /// <summary>
- /// Activa el formulario de resumen de porcentaje de ocupación.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnMostrarPorcentajeOcupacion_Click(object sender, EventArgs e)
- {
- double porcentajeOcupacion;
- porcentajeOcupacion = m_avion.CalcularPorcentajeOcupacion();
- MessageBox.Show(this, String.Format("{0}%", porcentajeOcupacion.ToString("0.0")), "Porcentaje de Ocupación", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- /// <summary>
- /// Activa la generación del punto de extensión número 1.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnOpcion1_Click(object sender, EventArgs e)
- {
- MessageBox.Show(this, m_avion.PuntoExtension1(), "Respuesta", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- /// <summary>
- /// Activa la generación punto de extensión número 2.
- /// </summary>
- /// <param name="sender">Generador del evento.</param>
- /// <param name="e">Argumentos del evento.</param>
- private void btnOpcion2_Click(object sender, EventArgs e)
- {
- MessageBox.Show(this, m_avion.PuntoExtension2(), "Respuesta", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- #endregion
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement