Created
July 2, 2015 21:47
-
-
Save Fhernd/513507726aee2a297052 to your computer and use it in GitHub Desktop.
Formulario principal de la aplicación.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ===++=== | |
// | |
// 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 | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment