Visual CSharp .NET - Display en Visual Studio

 
Vista:
sin imagen de perfil

Display en Visual Studio

Publicado por Daniel (2 intervenciones) el 28/05/2016 16:47:05
Buenas, he estoy utilizando Microsoft Visual Studio 2012 y quiero hacer un pequeño programita.
Estoy utilizando C# y windows forms para poder representar un display en pantalla.
Lo que yo quiero hacer es: tengo 7 labels, que van a hacer de display y 11 botones (0, 1, 2, 3,....., 9, Off) que al pulsar alguno de estos botones me tiene que salir el número correspondiente en el display, por ejemplo, si pulso 0, me tiene que salir 0 en el display y así hasta nueve y en el último caso que es Off, no mostrar nada. Tengo otros dos botones pero no tiene nada que ver con esto.
Todo esto que he comentado me sale bien, pero ahora otra cosa que quiero implementarle es que al pulsar la tecla del teclado por ejemplo el '1' o otro cualquier número me lo lea y me lo muestre por pantalla (el display me refiero), pero no consigo esto último.

A ver si me pueden ayudar.

Les adjunto mi codigo para que puedan echarle un vistazo:

namespace Casa
{
public partial class Form1 : Form
{


public Form1()
{
InitializeComponent();

}


private void button1_Click(object sender, EventArgs e)
{

label1.Visible = true;
label2.Visible = true;
label3.Visible = false;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
}

private void button2_Click(object sender, EventArgs e)
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
}

private void button3_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = true;
label4.Visible = true;
label5.Visible = true;
label6.Visible = false;
label7.Visible = true;
}

private void button4_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
}

private void button5_Click(object sender, EventArgs e)
{
label1.Visible = false;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
}

private void button6_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = false;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
}

private void button7_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = false;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
}

private void button8_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
}

private void button9_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
}

private void button10_Click(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
}

private void button11_Click(object sender, EventArgs e)
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
label5.Visible = false;
label6.Visible = false;
label7.Visible = false;
}

private void button12_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}

private void timer1_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = false;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
timer1.Interval = 1000;
timer1.Enabled = false;
timer2.Enabled = true;
}

private void timer2_Tick(object sender, EventArgs e)
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
timer2.Interval = 1000;
timer2.Enabled = false;
timer3.Enabled = true;
}

private void timer3_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = true;
label4.Visible = true;
label5.Visible = true;
label6.Visible = false;
label7.Visible = true;
timer3.Interval = 1000;
timer3.Enabled = false;
timer4.Enabled = true;
}

private void timer4_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
timer4.Interval = 1000;
timer4.Enabled = false;
timer5.Enabled = true;
}

private void timer5_Tick(object sender, EventArgs e)
{
label1.Visible = false;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
timer5.Interval = 1000;
timer5.Enabled = false;
timer6.Enabled = true;
}

private void timer6_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = false;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
timer6.Interval = 1000;
timer6.Enabled = false;
timer7.Enabled = true;
}

private void timer7_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = false;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
timer7.Interval = 1000;
timer7.Enabled = false;
timer8.Enabled = true;
}

private void timer8_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
timer8.Interval = 1000;
timer8.Enabled = false;
timer9.Enabled = true;
}

private void timer9_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
timer9.Interval = 1000;
timer9.Enabled = false;
timer10.Enabled = true;
}

private void timer10_Tick(object sender, EventArgs e)
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = true;
timer10.Interval = 1000;
timer10.Enabled = false;
}

private void button13_Click(object sender, EventArgs e)
{
this.Close();
}






//Estos dos métodos de abajo son de prueba de lo que quiero probar, que al pulsar la
//tecla, el '0' por ejemplo me salga en el display representado, tendría que tener los mismos
//valores que el del botón: button1_Click.
private void Form1_KeyDown(object sender, KeyEventArgs e)
{

label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true;
label5.Visible = false;
label6.Visible = true;
label7.Visible = false;
}

private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if(e.KeyChar=='a'){
label1.Visible = true;
label2.Visible = true;
label3.Visible = false;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
}
}



}
}

En enlace para que podais ver el ejemplo de como lo tengo diseñado en el form es el siguiente;

https://hdvirtual.us.es/discovirt/index.php/s/pGnuAyETxLLyJQu

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Wilfredo Patricio Castillo
Val: 91
Oro
Ha mantenido su posición en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Display en Visual Studio

Publicado por Wilfredo Patricio Castillo (59 intervenciones) el 28/05/2016 17:57:28
Si ya te funcione bien lo de los botones, no tienes que volver a escribir nuevamente todo para que se ejecute desde la pulsación de teclas.

Lo que tienes que hacer es en tu formulario, establecer la propiedad KeyPreview a true

Luego en el evento Keypress o keydown de tu formulario, llamar al evento click de cada botón

Por ejemplo verificas que si la tecla pulsada es cero entonces mandas a llamara al boton 4 por decir mas o menos así:

Button4.PerformClick();

Y eso sería todo.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Display en Visual Studio

Publicado por Daniel (2 intervenciones) el 28/05/2016 18:20:26
Perfecto lo conseguí.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar