![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Leer los botones con teclado
Hola:
He hecho un ejemplo colocando dos botones normales y un label1. Al pulsar el botón suelta un mensaje al label1: Has pulsado la A. Si pulso el botón con el ratón funciona bien como dije arriba, ahora al pulsar el teclado la letra "A" o la letra "B" no pasa nada. La pregunta es. ¿Existe la posibiliodad de esa opción? ![]() Code Snippetusing 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 Leer_boton { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { label1.Text = "Has pulsado la A"; } private void button2_Click(object sender, EventArgs e) { label1.Text = "Has pulsado la B"; } } }
__________________
http://electronica-pic.blogspot.com....n-arduino.html Manuales de electrónica general, PIC y Arduino. |
|
#2
|
||||
|
||||
|
¿Puedes capturar algun mensaje tipo KeyDown para las teclas que llame al OnClick del botón correspondiente segun la tecla?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#4
|
||||
|
||||
|
Si coloca &A tendria que presionar Alt+A para simular el clic. Tienes la posibilidad de activar la propiedad KeyPreview del Form y evaluar la tecla presionada en el evento keydown, como te recomendaron anteriormente.
__________________
Héctor Geraldino Software Engineer |
|
#5
|
||||
|
||||
|
Hola hector; ante la ausencia del interesado solo me queda
filosofar un poco acerca de este tema; yo tambien estoy convencido que lo dicho por Neftali es lo correcto, sin embargo considerando al formulario sin ningun otro control que no sea un par de botones y C# como lenguaje; lo que he comentado es lo que han pedido ![]() |
|
#6
|
|||
|
|||
|
Lo eh sacado.
Código:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WAKeyPreview
{
public partial class FormKeyPreview : Form
{
String Texto = "Se a presionado -> ";
public FormKeyPreview()
{
InitializeComponent();
}
private void FormKeyPreview_Load(object sender, EventArgs e)
{
this.KeyPreview = true;
}
private void FormKeyPreview_KeyPress(object sender, KeyPressEventArgs e)
{
//switch (e.KeyChar)
//{
// case (char)Keys.A:
// BtnA_Click(sender, new EventArgs());
// break;
// case (char)Keys.B:
// BtnB_Click(sender, new EventArgs());
// break;
// default:
// LblInfoPress.Text = Texto;
// break;
//}
}
private void BtnA_Click(object sender, EventArgs e)
{
LblInfoPress.Text = Texto + " A";
}
private void BtnB_Click(object sender, EventArgs e)
{
LblInfoPress.Text = Texto + " B";
}
private void FormKeyPreview_KeyDown(object sender, KeyEventArgs e)
{
LblValue.Text = e.KeyValue.ToString();
switch (e.KeyValue)
{
case 65:
BtnA_Click(sender, new EventArgs());
break;
case 66:
BtnB_Click(sender, new EventArgs());
break;
default:
LblInfoPress.Text = Texto;
break;
}
}
}
}
__________________
http://electronica-pic.blogspot.com....n-arduino.html Manuales de electrónica general, PIC y Arduino. |
|
#7
|
|||
|
|||
|
Hola
Acabo de probar lo que comento nuestro amigo cHackAll y efectivamente, al asignar en el text de los botones &A y &B al presional la tecla A o la tecla B hace lo que quieres y te olvidas de validar el keypress de tal forma que te ahorras todo el código que pusiste colocando en los eventos OnClick de cada botón esto: Código:
private void button1_Click(object sender, System.EventArgs e)
{
label1.Text = "Has pulsado la A";
}
private void button2_Click(object sender, System.EventArgs e)
{
label1.Text = "Has pulsado la B";
}
Edito: Eso, claro, asumiendo que solo tengas esos botones, sin nada mas ![]()
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney Última edición por egostar fecha: 26-09-2008 a las 02:15:48. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Leer buffer de teclado | dieleo | Varios | 0 | 12-02-2007 19:23:19 |
| como desactivar los botones de apagado rápido del teclado? | pvizcay | Windows | 9 | 07-10-2006 20:50:41 |
| Leer Puerto USB (Multi teclado USB) | DTAR | Varios | 0 | 08-06-2006 16:36:48 |
| Como leer todos los eventos del teclado en todas las aplicaciones?? | JuanErasmo | API de Windows | 1 | 04-04-2006 16:35:43 |
| USB Teclado en Red Hat 9 | nicocer | Linux | 0 | 05-07-2004 22:04:56 |
|