Last active
August 29, 2015 14:02
-
-
Save Fhernd/eed19abad150b46986b1 to your computer and use it in GitHub Desktop.
Control con los controles de entrada de los nuevos puntos del triángulo.
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 | |
// | |
// ===--=== | |
/*============================================================ | |
// | |
// Clase: DialogoPuntos.cs | |
// | |
// Propósito: Diálogo con los controles de entrada para las | |
// coordenas de los puntos. | |
// | |
// Original en: http://goo.gl/Es4txa | |
// | |
============================================================*/ | |
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; | |
namespace ElTriangulo.GUI | |
{ | |
/// <summary> | |
/// Control para las campos de texto. | |
/// </summary> | |
public partial class DialogoPuntos : Form | |
{ | |
#region Campos (Componentes) | |
/// <summary> | |
/// Interfaz de usuario principal. | |
/// </summary> | |
private Principal principal; | |
#endregion | |
#region Constructores | |
/// <summary> | |
/// Inicializa y carga los campos con los puntos actuales. | |
/// </summary> | |
/// <param name="principal">Interfaz de usuario principal.</param> | |
public DialogoPuntos(Principal principal) | |
{ | |
InitializeComponent(); | |
this.principal = principal; | |
txtPunto1X.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto1.X); | |
txtPunto1Y.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto1.Y); | |
txtPunto2X.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto2.X); | |
txtPunto2Y.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto2.Y); | |
txtPunto3X.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto3.X); | |
txtPunto3Y.Text = String.Format("{0:#,##0.0}", principal.Triangulo.Punto3.Y); | |
} | |
#endregion | |
#region Eventos | |
/// <summary> | |
/// Acepta los valores de los campos de texto. | |
/// También valida los valores de entrada. | |
/// </summary> | |
/// <param name="sender">Generador del evento.</param> | |
/// <param name="e">Argumentos del evento.</param> | |
private void btnAceptar_Click(object sender, EventArgs e) | |
{ | |
double punto1x = 0.0; | |
double punto1y = 0.0; | |
double punto2x = 0.0; | |
double punto2y = 0.0; | |
double punto3x = 0.0; | |
double punto3y = 0.0; | |
if( Double.TryParse(txtPunto1X.Text, out punto1x) && Double.TryParse(txtPunto1Y.Text, out punto1y) && | |
Double.TryParse(txtPunto2X.Text, out punto2x) && Double.TryParse(txtPunto2Y.Text, out punto2y) && | |
Double.TryParse(txtPunto3X.Text, out punto3x) && Double.TryParse(txtPunto3Y.Text, out punto3y)) | |
{ | |
if(!principal.Colineales(punto1x, punto1y, punto2x, punto2y, punto3x, punto3y)) | |
{ | |
principal.Triangulo.Punto1 = new Modelo.Punto(punto1x, punto1y); | |
principal.Triangulo.Punto2 = new Modelo.Punto(punto2x, punto2y); | |
principal.Triangulo.Punto3 = new Modelo.Punto(punto3x, punto3y); | |
principal.Repintar(); | |
this.Close(); | |
} | |
else | |
{ | |
MessageBox.Show(this, "Los puntos no pueden ser colineales.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); | |
} | |
} | |
else | |
{ | |
MessageBox.Show(this, "Debe ingresar solo números.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); | |
} | |
} | |
/// <summary> | |
/// Cierra el diálogo de entrada puntos del triángulo. | |
/// </summary> | |
/// <param name="sender">Generador del evento.</param> | |
/// <param name="e">Argumentos del evento.</param> | |
private void btnCancelar_Click(object sender, EventArgs e) | |
{ | |
this.Close(); | |
} | |
#endregion | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment