![]() |
|
|||||||
|
|
|
Share | LinkBack | Herramientas | Desplegado |
|
|
#1 |
|
Member
Fecha de Ingreso: marzo-2009
Mensajes: 44
|
Hola a todos, en este código:
Código:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
enum Dias
{
Lunes = 1, Martes = 2, Miercoles = 3, Jueves = 4,
Viernes = 5, Sabado = 6, Domingo = 7
}
static string ImprimeDia(string k)
{
Dias kitem = (Dias)Enum.Parse(typeof(Dias), k, true);
return I(kitem);
}
static string I(Dias di)
{
string s = "";
switch (di)
{
case Dias.Lunes:
s = "Tengo que levantarme temprano";
break;
case Dias.Martes:
s = "Aun no me recupero";
break;
case Dias.Miercoles:
s = "Faltan 2 dias";
break;
case Dias.Jueves:
s = "Falta un dia solamente";
break;
case Dias.Viernes:
s = "Por fin es viernes";
break;
case Dias.Sabado:
s = "Es el mejor dia de la semana";
break;
case Dias.Domingo:
s = "Ya mañana es Lunes de nuevo";
break;
}
return s;
}
private void button1_Click(object sender, EventArgs e)
{
{
if (string.IsNullOrEmpty(textBox1.Text))
{
MessageBox.Show("Debe ingresar una fecha en el campo");
return;
}
if (Enum.IsDefined(typeof(Dias), textBox1.Text))
{
MessageBox.Show("El valor ingresado no pertenece a un dia valido");
return;
}
else
{
listBox1.Items.Add(ImprimeDia(textBox1.Text));
}
}
}
}
}
Código:
if (Enum.IsDefined(typeof(Dias), textBox1.Text))
{
MessageBox.Show("El valor ingresado no pertenece a un dia valido");
return;
}
agradezco de antemano la ayuda, Saludos, Dogod ________________________ Art. 6 Poner el código entre las etiquetas de código que son [*code][*/code] ó usar el botón para evitar confundir el comentario con el código y sea mas legible el mensaje.Última edición por Fashion; 31-ene-2010 a las 16:08 Razón: NORMAS DEL FORO - ART. 6 |
|
|
|
|
|
#2 |
|
Senior Member
Fecha de Ingreso: marzo-2007
Mensajes: 477
|
no entiendo cómo funciona ésto:
Código:
if (Enum.IsDefined(typeof(Dias), textBox1.Text)) Código:
.....
private const static DiasDeLaSemana = new ArrayList("lunes", "martes", "miercoles", "jueves", "viernes", "sabado", "domingo");
....
private void button1_Click(object sender, EventArgs e)
{
.....
if(! DiasDeLaSemana.Contains(textBox1.Text.ToLower()){
// el msg box
}
}
No se el nombre correcto de la función, pero es la idea. |
|
|
|
|
|
#3 |
|
Member
Fecha de Ingreso: marzo-2009
Mensajes: 44
|
Elegante tu solución, pero el código que yo puse intenta ser más condescendiente con el usuario, al permitirle equivocarse, el problema es ese error que no sé solucionar,
pero gracias, ojalá alguien más responda, saludos |
|
|
|
|
|
#4 |
|
Moderador
Fecha de Ingreso: junio-2007
Mensajes: 1.764
|
- Utiliza un ComboBox, así evitas que el usuario tenga que estar ingresando el día a cada momento:
- Agrega 1 ComboBox, 2 Botones , 1 Label y prueba con el siguiente código: Código:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Agregando datos al ComboBox
comboBox1.Items.Add("Lunes");
comboBox1.Items.Add("Martes");
comboBox1.Items.Add("Miercoles");
comboBox1.Items.Add("Jueves");
comboBox1.Items.Add("Viernes");
comboBox1.Items.Add("Sabado");
comboBox1.Items.Add("Domingo");
}
private void button1_Click(object sender, EventArgs e)
{
// verificar si se ha seleccionado un día en el ComboBox
if(comboBox1.SelectedIndex != -1)
label1.Text = comboBox1.SelectedItem.ToString();
else
label1.Text = "No se ha seleccionado día";
}
private void button2_Click(object sender, EventArgs e)
{
// verificar si se ha seleccionado un día en el ComboBox
if(comboBox1.SelectedIndex != -1)
{
//switch (comboBox1.SelectedIndex) //Usando números
switch (comboBox1.SelectedItem.ToString())
{
//case 0: //Usando números en vez de texto
case "Lunes":
label1.Text = "Tengo que levantarme temprano";
break;
case "Martes":
label1.Text = "Aun no me recupero";
break;
case "Miercoles":
label1.Text = "Faltan 2 dias";
break;
case "Jueves":
label1.Text = "Falta un dia solamente";
break;
case "Viernes":
label1.Text = "Por fin es viernes";
break;
case "Sabado":
label1.Text = "Es el mejor dia de la semana";
break;
case "Domingo":
label1.Text = "Ya mañana es Lunes de nuevo";
break;
}
}
else
label1.Text = "No se ha seleccionado día";
}
}
}
__________________
![]() |
|
|
|
![]() |
| Herramientas | |
| Desplegado | |
|
|